Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将JS字符串与PHP字符串匹配_Php_Javascript_Jquery - Fatal编程技术网

将JS字符串与PHP字符串匹配

将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

我想将JS字符串“导出”到PHP处理脚本并匹配它们。当他们匹配时,我想通过一个简单的验证过程,如果验证成功,发送一封电子邮件

从这个角度来看,到目前为止,我的代码是这样的:

我有大约40个div,每个div代表一个项目。下面的html只是一个示例

HTML

<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({});
});