javascript - 尝试通过 AJAX 从多个窗口传递多个变量

标签 javascript php jquery html ajax

我试图将多个变量从两个不同的窗口传递到同一个 PHP 脚本中。这可能吗?如果没有,最好的行动方案是什么?

谢谢

验证电子邮件.html

<script type = "text/javascript" src = "js/js_functions.js"> </script>  
<form method="post" onsubmit = "return testAjax();" />
    <input   type="email" placeholder="email" name="email" required maxlength = "50"><br>
    <input  type="email" placeholder="re-enter email"name="reemail" required maxlength = "50"><br>              
    <input type="submit" value="Verify Email"> 
</form>

<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>

signup.html:

<script type = "text/javascript" src="js/js_functions.js"></script>
<form method="post" onsubmit="return ajaxTest();"/>
            <input   type="text" placeholder="username" name="username"     required = "required" maxlength = "15"><br>
            <input  type="password" placeholder="password" name="password" required = "required" pattern = "(?=.*\d)(?=.*[A-Z]).{10,}"><br>
            <input  type="password" placeholder="re-enter password"name="repassword" required = "required"><br>
            <p class = "passwordreq">Password must:</p>

            <input type="submit" value="sign up"> <input type="button" value="go back"  onclick="window.location='index.html'">
        </form>
<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>

js_函数

var username, password;
function setUsrandPass(form)
{
if(form.password.value != form.repassword.value)
{
    alert("Passwords do not match");

}

else {
    username = form.username.value;
    password = form.password.value; 

    window.location = 'verifyemail.html';

}

return false; 
}

function ajaxTest()
{
if(form.email.value != form.reemail.value)
{
    alert("Emails do not match");

}

else
$.ajax({
    type: 'GET',
    url: 'signup_script.php',
    data: {usr: username, pass: password, em: form.email.value},
});

return false; 
}

PHP 脚本:

<?php 

include 'profile_Functions.php';

$username = $_GET['usr'];
$password = $_GET['pass'];
$email = $_GET['em'];

echo "got here!";

createUser($username,$password,$email);
?>

最佳答案

对于来自不同页面的内容来说这是不可能的。他们需要向 PHP 脚本发出相同的请求来提供这两种数据。

您可以通过使用 PHP 写入某种数据存储(即文件或数据库)来规避此问题,然后等待其他脚本也写入,然后 PHP 可以进行所需的任何处理。

关于javascript - 尝试通过 AJAX 从多个窗口传递多个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33434942/

相关文章:

javascript - 使用React-Hooks/Axios获取数据并显示在表格中

php - 在从其他网址获取图像时将图像转换为 base64

php - 在数据库中添加2组数组

javascript - 检查我的用户输入是否是设定长度的数字?

Javascript - 如何从http get 解析graph api facebook 中的json?

javascript - Gulp-确保文件开头有注释

javascript - 如何使用 Html5 Canvas 找到三 Angular 形内的鼠标点

javascript - CSS 将一个 div 直接放在另一个之上

php - WP 增强媒体库插件 - 如何按查询中的媒体类别进行过滤?

javascript - 如何阻止大于视口(viewport)的 DIV 滚动?