【问题标题】:Unable to Pass JS variable to another PHP page无法将 JS 变量传递到另一个 PHP 页面
【发布时间】:2021-01-30 07:20:56
【问题描述】:

我不是技术人员,而是半技术业务人员并学习/创建自己的网站。

我想将 JS 变量(从 html 页面)传递到我的另一个 Php 页面。
注意** 我正在使用 URL(标题)中的必需参数进行重定向。现在,我想传递另一个变量,但不是通过 URL

这是我的html页面代码:

    $.ajax({
        type: 'GET',
        url: "'search_result.php' + '?title=' + dtitle",
        data: { selectedFT: "hello"}
    });

还有我的php页面代码:

<php>
$fueltype = $_GET['selectedFT'];
echo $fueltype;
// I will be using this variable as $fueltype in my further code.
?>

感谢您的帮助。我浪费了很多时间来通过谷歌解决这个问题,但没有什么合适的。
请提供示例以便我理解。

【问题讨论】:

  • 如果我理解你的问题,你想传递额外的变量,而不是它们显示在网页的地址栏中。对吗?
  • 如果您被重定向 - 即浏览器打开一个新页面 - ,那么这表明 Ajax 代码根本不起作用。 Ajax 的全部意义在于浏览器不会移动到新页面。打开浏览器的开发者工具(在大多数浏览器中按 F12),运行代码,然后检查控制台部分是否有错误。 (您可能需要确保选中 Preserve Log 选项,以便在加载新页面时不会重置日志)
  • @TimothyAlexisVass,是的,这是正确的。
  • 那么你应该使用POST方法而不是GET。
  • 好的,谢谢@TimothyAlexisVass

标签: javascript php ajax


【解决方案1】:

post 方法可以帮助你:

$.ajax({
        type: 'post',
        data: {
            title: dtitle,
            selectedFT: "hello"
        },
        url: 'search_result.php'
    });

在您的 PHP 页面中添加:

<php>
$fueltype = $_POST['selectedFT'];
echo $fueltype;
// I will be using this variable as $fueltype in my further code.
?>

【讨论】:

    【解决方案2】:

    试试这个解决方案。

    let dtitle = "Hello";
    $.ajax({
        type: 'GET',
        url: `search_result.php?title=${dtitle}`,
    });
    

    PHP 文件

    <?php
       $fueltype = $_GET['title'];
       echo $fueltype;
    ?>
    

    【讨论】:

    • 感谢@tavros,但这不是预期的。通过标题工作正常。我在 URL 中传递。我不想通过 URL 发送变量。原因是:SEO 和传递变量会产生问题。根据几个条件和一些我想在下一页而不是在传递它们之前执行的操作,我有许多变量要传递。
    • 所以在这种情况下你需要使用 POST 方法,而不是 GET。
    猜你喜欢
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-06
    相关资源
    最近更新 更多