PHP + AJAX - 传递当前的$ _GET变量

时间:2012-11-10 17:37:37

标签: php ajax

我有一个页面,用户可以为某些选项填写$ _GET数据。我想使用AJAX将这些$ _GET变量传递给.php脚本。但我的问题是如何传递他们到目前为止填写的$ _GET变量,而不刷新页面?

到目前为止,这是我的代码。

$.ajax({
type: "GET",
url: "serverside script to process on data",
data:{name:youwant}, // Here is where I want to take what the user has filled out so 
                     // far, and place it here all without refreshing the page
success: function(data){
     alert("return here if success")

}
})

2 个答案:

答案 0 :(得分:1)

我不知道您的代码,但您可以使用表单,但不是提交它,而是将 onsubmit 方法添加到javascript函数中。在该函数中,您收集所有变量并通过ajax传递它。

示例:<form name="form1" method="get" onSubmit="return send()">

<script>
function send() {
 $.ajax(...);

return false;

}
</script>

您可以使用seralize function发送 $ .ajax数据字段

答案 1 :(得分:1)

首先,将此任务放到小任务中:

1)在JavaScript中获取/处理变量

2)将它们发送给PHP

3)解析/处理那些

4)根据结果发送回复JavaScript

5)处理响应并向用户显示消息

看看这个例子, 我们假设加载了jquery.js。 假设我们想要发送输入的值 - 电子邮件和密码。

<script type="text/javascript">

  $("#Send").click(function(){

     $.ajax({

         type : "GET", 
         //Look carefully:
         data : {
           // it'll be PHP vars       // This is JS vars
           email                :   $("#email").val(),
           password             :   $("#password").val()
         },

         success : function(respondFromPHP){

              alert(respondFromPHP);
         }
      });


  });

</script>

<input type="text" id="email" />
<input type="password" id="password" />

<br />
<button id="Send">Send to php</button>

在你的php脚本中,只需处理你得到的变种,如下所示:

<?php

print_r($_GET); // will print smth like Array("email" => "foo", "password" => "bar")

// Then create function so that you can simplify handling of the vars.
// Like this:
function validate_password($password){}
function validate_email($email){}