PHP和ASP.NET之间的调用/应答


call/answer between PHP and ASP.NET

是否可以通过ASP.net页面中集成的HTML页面的文本区域提交电子邮件地址,并将其发送到控制是否为有效电子邮件地址的PHP脚本,然后将答案发送回ASP页面,这样我就可以得到警告:有效或无效。我有两个不同的网站:ASP.net和一个PHP
ASP.net页面有一个HTML格式的Web表单。我想用这个把电子邮件发送到PHP脚本。运行验证并将状态发送回ASP页面,该页面将通过警报回答"邮件有效"或"无效"。

我的想法是,脚本(在验证控制之后)必须向ASP页面发回一个答案,抛出一个URL,ASP页面将"侦听"/"获取"这个URL作为一个变量,以便显示PHP脚本的结果

PHP端:

    <form action="http://www.exemple.com/scripts/mailvalidation.php" method="post"        id="webform">

脚本PHP?(可能使用PHP FILTER_VALIDATEMAIL)?

ASP.NET?

有什么建议吗?

听起来是使用AJAX的完美场所。它与你使用的语言无关。PHP、ASP.NET、JSP都是一样的。所需要的只是简单的JavaScript或Jquery。

在您的ASP页面中,

<form id="myform">
<input type="email" id="email" name="email" />
<button>Submit</button>
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="application/javascript">
$(document).ready(function(){
var formvars = $("#myform").serialize();
var url = "http://www.example.com/your_page.php?" + formvars;

    $.ajax({
        url: url,
        cache:'false',
        dataType: 'text',
        type:"GET",
        success: function(data){
          //alert( data );
           alert( data );
           if(data =="1")
               alert("VALID");
           else
               alert("IN VALID");
        },
        error: function(data){
          alert('error; '+ eval(error));
        }
       });

 });
</script>

在您的php脚本中,

<?php
$email = $_REQUEST["email"]
if($email, FILTER_VALIDATE_EMAIL))
   echo "1";
else
   echo "0";
?>

祝你好运。

我想说,如果问题是将值从asp传递到php,那么使用querystring将值从一个页面传递到另一个页面。

但就你的评论而言。。。您可以直接使用ASP在MYSQL中插入记录,而无需通过PHP。

YOu可以使用以下内容作为参考:

http://www.codeproject.com/Articles/36484/Working-C-code-for-MySql-Stored-Procedures-IN-OUT

在php文件中使用:

 <?php 
 if(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)){
  $msg='valid';      
 }
 else{  $msg='invalid';  }
 $urlVar='email='.$_POST['email'].'&msg='.$msg;
  header("location: hostname/PageName.asp?$urlVar");

然后在asp中,你可以使用上面的代码,并在if条件下执行你的消息,如图所示:

if(Request.QueryString("msg") != ' ' && Request.QueryString("email") != ''){
} 

我不擅长asp,但希望你能有概念来处理它

我建议在asp.net中验证电子邮件。在asp.net上验证电子邮件有很多方法。比如使用Regular Expression-请参阅此,或者使用EmailValidator进行验证。另请查看此链接-ASP.NET 的电子邮件地址验证

下面是上面的一个例子。

<asp:RegularExpressionValidator ID="regexEmailValid" runat="server" ValidationExpression="'w+([-+.]'w+)*@'w+([-.]'w+)*'.'w+([-.]'w+)*" ControlToValidate="tbEmail" ErrorMessage="Invalid Email Format"></asp:RegularExpressionValidator>

但若你们有兴趣了解how to communicate between asp.net and php,那个么你们可以查看以下内容。

拥有接受email作为get请求的php页面,php页面可以使用FILTER_VALIDATE_EMAIL验证电子邮件或您想要添加的任何其他自定义验证。

然后使用asp.net web表单中的jQuery ajaxget请求调用该页面,并从php页面发送所需的消息和success处理程序捕获输出,将其显示到asp.net页面。

编辑

检查完您的评论后,您需要从asp.net插入到mysql。这几乎是可行的。您需要有mysql connector for .net,并使用该库进行CRUD操作。由于答案或实际的代码片段不在当前问题的范围内,我发布的链接将对您有所帮助。

以下是一些链接-

链接1LINK2