将js变量传递给另一个页面上的php变量并转到目标页面

时间:2017-04-16 08:52:43

标签: php jquery

我需要将index.php的一些js变量传递给tags.php上的php变量 - 不使用表格
- 不使用地址栏
- 并转到tags.php

index.php

$('#m1tags').click(function(){
var id = $('.pmarked').data('id'); // an integer
$.ajax({
    url: 'tags.php',
    type: 'post',
    data: {'id': id},
    success: function() {

    }
});
location.href='tags.php';
});

tags.php

<?php echo $_POST['id'];?>

Notice: Undefined idex: id...

任何帮助?

2 个答案:

答案 0 :(得分:2)

您提出的请求是异步的,这意味着它在后台发生,然后脚本继续在同一页面上执行。您正在发送POST请求,然后使用其他请求重定向用户。

您可以使用JavaScript发送隐藏的表单,以便在同一请求中将用户重定向到POST数据。

&#13;
&#13;
window.onload = function () {
    var id = 60;
    $("#id-input").val(id);
    $("#tags-form").submit();
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<form id="tags-form" method="POST" action="tags.php">
<input type="hidden" name="id" id="id-input">
</form>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

在这里,您试图让“tag.php”从未知来源获取信息。 要将信息发送到php页面,您需要使用表单或URL变量。

即使使用ajax url变量,也会使用post变量(当需要用户的相关信息时)。