Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过var';使用jquery&;php_Php_Jquery - Fatal编程技术网

如何通过var';使用jquery&;php

如何通过var';使用jquery&;php,php,jquery,Php,Jquery,我正在试图找出如何将我的表单var传递到页面 var login = $('#login').val(); var pass = $('#pass').val(); var data = { login: login, pass: pass }; $.ajax({ type: "POST", data: data, url: "page_2.php", success: function(data) { documen

我正在试图找出如何将我的表单var传递到页面

var login = $('#login').val();
var pass = $('#pass').val();
var data = {
    login: login,
    pass: pass
};

$.ajax({  
    type: "POST",
    data: data,
    url: "page_2.php",
    success: function(data)
    {
        document.location.href = url;

    }
}); 
它根本不会发布到新页面。。在page_2.php中,我有:

<?php
        $error = false;


        if (isset($_REQUEST))
        {
            extract($_REQUEST);   
            print_r($_REQUEST);
        }
//      else
//      {
//              header("location:page_1.php");
//      }

?>

我已经在谷歌搜索了两天,没有发现通过jquery/ajax/php将var发布到另一个页面的例子。。有人能帮我或给我指一个链接吗


非常感谢

回调函数不知道
success
url变量

尝试发出警报
警报(数据)以查看是否调用了它。

Dennis

提交表单后,如果希望使用新数据将用户带到页面,则不希望使用Ajax。只要将
上的“action”属性设置为“page_2.php”,就可以开始了。在这种情况下,您甚至不需要Javascript

<form method="post" action="page_2.php">
  <!-- your form fields go here -->
</form>
在PHP方面,您的想法是正确的。我建议使用
$\u POST
而不是
$\u REQUEST
来减少CSRF的可能性。

@Dennis-

注意,您正试图保存一个页面的状态,以便在第二个页面上使用

正确的方法是通过表单提交发布数据。您可以通过ajax请求来完成,但会给代码增加不必要的复杂性。当您需要将数据传递到服务器,但希望保持在同一页面上时,请使用AJAX

遵循Blackcoat的建议表格提交


记住,如果你只有一把锤子,那么你将敲打一切,包括你的拇指。始终先使用简单的解决方案。

在成功回调中更改页面的URL时,为什么要使用Ajax?为什么不用一个简单的表格呢?那是我最后一次尝试。。我确实尝试过使用document.location.href=“./page_2.php”;尝试了“警报(数据)”,并获得了数组([登录]=>dennis@test.com[pass]=>testpass[u utma]=>184037297.17631186.1271628080.1273616918.1275392275.3[u utmz]=>184037297.1271628080.1.1.utmcsr=(直接)UTMCN=(直接)utmcmd=(无)[u una]=>8a516e-128897be867-32a12505-2)因此,它正在发送到页面,但当它重定向时,它不发送。当页面加载时,提取($_请求)只有数组2(3[u utma]=>184037297.17631186.1271628080.1273616918.1275392275.3 4[u utmz]=>184037297.1271628080.1.1.utmcsr=(直接)| utmccn=(直接)| utmcmd=(无)5[u unam]>8a516e-128897be862-A1326)@Dennis,最终重定向不会发布数据。ajax调用将发送数据,执行页面,并将结果返回到当前页面。更改位置只会将浏览器发送到新的url(如单击链接)这被认为是一个GET,所以唯一的解决方案是将它们传递到url..当我将它们传递到新url时,我需要将一些表单数据发送到下一页(
$('form').submit(function() {
  var url = 'page_2.php';
  $.post(url, $(this).serialize(), function( data ) {
    console.log("Success!\nData: " + data);
  });
  return false;
});