将JS字符串与PHP字符串匹配
我想将JS字符串“导出”到PHP处理脚本并匹配它们。当他们匹配时,我想通过一个简单的验证过程,如果验证成功,发送一封电子邮件 从这个角度来看,到目前为止,我的代码是这样的: 我有大约40个div,每个div代表一个项目。下面的html只是一个示例 HTML将JS字符串与PHP字符串匹配,php,javascript,jquery,Php,Javascript,Jquery,我想将JS字符串“导出”到PHP处理脚本并匹配它们。当他们匹配时,我想通过一个简单的验证过程,如果验证成功,发送一封电子邮件 从这个角度来看,到目前为止,我的代码是这样的: 我有大约40个div,每个div代表一个项目。下面的html只是一个示例 HTML <div class="Post odd postStyles"> <input class="cheap" data-mail="email@sample.com" name="option" type="radi
<div class="Post odd postStyles">
<input class="cheap" data-mail="email@sample.com" name="option" type="radio">
<article>
<h6 class="casinoHeading">Grosvenor Casino Birmingham</h6>
<p class="">84 Hill Street, Birmingham, B5 4AH</p>
</article>
</div>
不幸的是,这正是我迷路的地方。我希望能够将变量mail传递给php脚本,然后该脚本运行一个循环并找到正确的字符串。
运行一些简单的验证,然后发送电子邮件
以下是我编写的PHP脚本:
<?php
$emails = array(
"email@sample.com",
"email@sample1.com",
"email@sample2.com",
);
foreach($emails as $val) {
print $val;
}
if(isset($_POST ['Name'], $_POST ['Telephone'], $_POST ['Position'], $_POST['Email'], $_POST ['Noparty'], $_POST ['Message'], $_POST ['Adress'], $_POST ['PostCode'],
$_POST ['Date'], $_POST ['Time'])) {
var errors = array();
$name = htmlentities(mysql_real_escape_string(strip_tags($_POST['Name'])));
$telephone = htmlentities(mysql_real_escape_string(strip_tags($_POST['Telephone'])));
$email = strip_tags(mysql_real_escape_string(htmlentities($_POST['Email'])));
$position = strip_tags(mysql_real_escape_string(htmlentities($_POST['Position'])));
$noparty = strip_tags(mysql_real_escape_string(htmlentities($_POST['Noparty'])));
$message = mysql_real_escape_string(htmlentities(strip_tags($_POST['Message'])));
$address = mysql_real_escape_string(htmlentities(strip_tags($_POST['Adress'])));
$postcode = mysql_real_escape_string(htmlentities(strip_tags($_POST['PostCode'])));
$date = mysql_real_escape_string(htmlentities(strip_tags($_POST['Date'])));
$time = mysql_real_escape_string(htmlentities(strip_tags($_POST['Time'])));
if(empty($name) || empty($telephone) || empty($email) || empty($position) || empty($noparty) || empty($message) || empty($address) || empty($postcode) || empty($date)
empty($time)){
$errors [] = "<span class='error'>Please fill in the required fields!</span>";
}else{
if(strlen($name)<=2 || strlen($name)>25){
$errors [] = "<span class='error'>Sorry, username should be between 2 and 25 Charachters</span>";
}
}
//If all runs through sucessfully - send email
}
?>
很抱歉,我真的不明白您的意思。您可以使用$.post发送表单,然后通过PHP返回JSON,并显示错误或状态OK
您可以通过以下方式获取属性:
var mail;
$("input").click(function(){
mail = $(this).val();
if(!mail)
mail = $(this).attr("data-mail");
});
$("#submit-button").on("click", function(e)
{
e.preventDefault();
$.post({});
});
您应该使用传统的方式来实现这一点:html表单、隐藏输入和简单的提交按钮。那么您想学习如何发出Ajax请求吗<代码>->
检查jquery ajax函数,jquery帖子,例如:我知道如何发出ajax请求。然而,我不知道如何构造它,以便发送一个JS变量,然后在PHP中引用该变量。这就是这个问题的本质。你没有发送“变量”。您正在发送数据。你要么发帖子,要么收到请求。数据只是字符、文本。您只需将数据作为参数传递给您使用的jQuery函数。有关示例和信息,请参见。@Felix Kling-这为我澄清了问题。我似乎对它的原理有点困惑。非常感谢。一个表格的Ajaxing不是一个愚蠢的方式。这是许多网站使用的一种方法。当您只需要发送数据时,为什么要重新发布页面。此外,OP在其代码中没有任何形式。你不能假设他们想用你称之为“传统”的方式…-1Ok,所以使用$.post发送表单:)恐怕我正在进行的项目需要修改表单。我还需要能够将客户端信息传递到服务器,验证它,然后提交表单。因此,PHP发布了。
var mail;
$("input").click(function(){
mail = $(this).val();
if(!mail)
mail = $(this).attr("data-mail");
});
$("#submit-button").on("click", function(e)
{
e.preventDefault();
$.post({});
});