【问题标题】:pass variable from js to php using POST使用 POST 将变量从 js 传递到 php
【发布时间】:2016-08-06 07:48:41
【问题描述】:

为什么我不能将变量从 js 传递到 php

 $("#btnpage").click(function(){
        path = $('#spantwrap').html();
        $.ajax({
            url: 'plus-page.php',
            type: 'post',
            data: {'path': path},
            success: function() {
                console.log(path);
            }
        });
    location.href = 'plus-page.php';
    });

plus-page.php

<form id="form1" action="?" method="post">    
<input type="hidden" name="path" value="<?php echo $_POST['path'];?>" // line 46
</form>

错误:未定义的索引:第 46 行上的路径...

【问题讨论】:

  • 显示您的$('#spantwrap') html 代码。
  • 您正在向服务器发送一个 POST 请求,如果成功,您将重定向到同一页面,这会导致一个 GET 请求,其中 $_POST 为空。使用 Ajax,您正在对后端进行隐藏调用,并且在成功处理程序中您应该操作页面,例如在页面上显示结果。你不应该转发到另一个页面。
  • 先打印/警报路径并添加 spantwrap id 的 html 会得到什么?
  • @ssc-hrep3,请看我的更新
  • 删除location.href = 'plus-page.php';,因为它总是会给你一个未定义的索引错误。您正在 GET 请求中访问 $_POST['path']

标签: php jquery post


【解决方案1】:

你试过了吗?

$("#btnpage").click(function(){
    path = $('#spantwrap').html();
    $.ajax({
        url: 'plus-page.php',
        type: 'post',
        success: function() {
        location.href = 'plus-page.php?path=' + path;
        }
     });
});

这样你就可以使用它了吗?

<input type="hidden" name="path" value="<?php echo $_POST['path'];?>">

你的路径的价值是什么?

【讨论】:

  • 在这种情况下我需要使用POST nad 而不是GET 过程
  • 我编辑了隐藏元素并从 GET 更改为 POST。还是未定义?
【解决方案2】:

你为什么不使用这个解决方案的表单发布方法??? ?

第一个 Ajax 发布成功时完成:调用函数...在新窗口中您没有任何发布数据,我不知道任何解决方案通过 javascript 将数据发布到新窗口.. 只有一个您可以发送数据通过 GET 请求..

你可以看到ajax发布的变量并通过新窗口打开url..请使用

不使用 ajax 来实现你所需要的。

$(document).on('click', '#button', function(){
    var my_data = 'Test Test Tes';
        window.open('plus-page.php?my_data='+my_data);
  });

plus-page.php

<?php 
 if(isset($_GET['my_data'])){
        $data=$_GET['my_data'];    
        echo $data;          
 }
?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-23
    • 2016-02-02
    • 1970-01-01
    • 1970-01-01
    • 2012-01-29
    • 1970-01-01
    • 1970-01-01
    • 2011-10-29
    相关资源
    最近更新 更多