如何将数据从PHP服务器发送到客户端

时间:2015-01-01 09:31:02

标签: php jquery ajax

我是网络技术的新手。我想把数据从PHP Server发送到客户端test.html。但只有警报(" 1")出现但是警告(" 2")没有打印我只是想将Json数据打印成警报(JSON.stringify(response)); ,请告诉我哪里错了?

我的服务器代码是api.php

<?php
header('Access-Control-Allow-Origin: *');//Should work in Cross Domaim ajax Calling request
mysql_connect("localhost","root","1234");
mysql_select_db("demo");
if(isset($_GET['type']))
{
    if($_GET['type']=="login"){
        $username=$_GET['UserName'];
        $Password=$_GET['Password'];
        $query="Select * from registration where UserName='$username' and Password='$Password'";
        $result=mysql_query($query);
        $totalRows=mysql_num_rows($result); 
        if($totalRows>0){
            $recipes=array();
            while($recipe=mysql_fetch_array($result, MYSQL_ASSOC)){
                $recipes[]=array('User'=>$recipe);
            }
            $output=json_encode(array('Users'=>$recipes));
            echo $output;
        }
    }
}
else{
    echo "Invalid format";
}

我的客户端代码 的test.html

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>JSON </title>
        <script src="Scripts/jquery-1.8.2.js">
        </script>
        <script>
            $(document).ready(function(){
                alert("1");
               $("#btnLogin").click(function(){
                   alert("2");
                  $.ajax({
                      url:"http://localhost/Experiements/webservices/api.php",
                      type:"GET",
                      dataType:"json",
                      data:{type:"login", UserName:"abhishek",Password:"123456"},
                      ContentType:"application/json",
                      success: function(response){
                          alert(JSON.stringify(response));
                      },
                      error: function(err){
                          alert(JSON.stringify(err));
                      }
                  })
               }); 
            });
        </script>
    </head>
    <body>
        <input type="button" id="btnLogin" name="btnLogin" value="Login"/>
    </body>
</html>

数据库演示,用户名 root ,密码 1234 ,表格注册 enter image description here

3 个答案:

答案 0 :(得分:3)

在jquery中#选择器用于通过 id 不是其name属性)来选择元素。所以在按钮上添加id

<input type="button" id="btnLogin" name="btnLogin" value="Login"/>

现在您的$("#btnLogin").click()功能应该有效。

答案 1 :(得分:2)

错误1:输入中缺少ID。添加它

<input type="button" id="btnLogin" name="btnLogin" value="Login"/>

错误2:您的ajax网址以php结尾但您提到了api.html

  url:"http://localhost/Experiements/webservices/api.php",

答案 2 :(得分:0)

使用id元素中的input属性在javascript中引用#btnLogin