php - 使用ajax如何将变量传递给两个不同的php脚本

标签 php jquery ajax forms post

我有两种使用 ajax 发送数据的表单。两种形式都有自己的脚本,我认为我能够在单独的脚本上访问相同的 $_POST[] 变量,但这不起作用。我尝试使用 session_start()include_once ,由于某种原因,我无法弄清楚为什么变量没有从脚本传递到脚本。我已经花了三天时间研究解决方案,因此如果您知道我做错了什么或有替代方案,请告诉我,谢谢。

JavaScript。

$('.test-input').load("test.php", {
    'sendTo':sendTo,
    'carrier':carrier,
    'testSubmit':testSubmit
  })

$('#error-display').load("textsms.php", {
    'date':scheduleDate,
    'firstname':firstName,
    'number':number,
    'message':message,
    'time':time,
    'service':service,
    'submit':submit
  })

测试.php

if (isset($_POST['testSubmit'])) {
  $sendTo = $_POST['sendTo'];
  $carrier = $_POST['carrier'];

  $sendToInvalid = false;
  $testEmpty = false;
  $sendTo = "";

  if (!preg_match('/^\(?\b\d{3}[-.)\s]?\s?\d{3}[-.)\s]?\d{4}\b$/', $sendTo) and $sendTo !== '') {
    $sendToInvalid = true;
  } elseif (empty($sendTo) || empty($carrier)) {
    $testEmpty = true;
  } else {
    $sendTo = preg_replace('/[-.()\s]/','',$sendTo).$carrier;
    $_SESSION['sendTo'] = $sendTo;
  }
}

尝试将 $sendTo 传递给下面的 textsms.php。

else {
    include 'test.php';
    $sendTo = $_SESSION['sendTo'];
    $number = preg_replace('/[-.()\s]/','',$number);
    $number = "(".substr($number,0,3).") ".substr($number,3,3)."-".substr($number,6,4);
    if ($sendTo !== "contactme@aboutryansam.com") {
      $header = $name."\r\n#: ".$number;
      $sendMsg = $userMsg."\r\nOn: ".$date.$time."\r\nService: ".$service;

      //mail($sendTo, "You win!", $sendMsg, $header);
      echo $sendTo;
      echo "it worked";
    }

最佳答案

当然,在初始化ajax的页面上,包含session_start()内的“header.php”文件。 test.php 中的 include_once('header.php') 也是如此。它应该可以解决问题。

现在这不是一个好的做法,我更好建议您使用cookie并通过$_COOKIE访问它们。更好的是,使用一个可以处理 cookie 的库,例如 this one 。 JQuery 还具有非常好的 cookie 管理。

关于php - 使用ajax如何将变量传递给两个不同的php脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49733423/

相关文章:

php - 如何从数据库中检索数据以在网页上以 csv 格式显示?

嵌套的 Javascript 循环和 if 语句

javascript - 使用 jQuery 将事件转发到另一个元素

javascript - 使用 javascript 从一页到 div 的 HTML

PHPExcel Style获取默认数字格式

javascript - 设置跨域文件上传的响应头和请求头

javascript - AngularJS(前端)和 Laravel(后端)中 JSON/Arrays 中的 NULL

javascript - 不一致的 RegEx 空白清理

javascript - 显示用户返回页面后 AJAX 调用检索到的相同数据

php - Visual Composer 不显示特定的页面样式