如何从 PHP 服务器向客户端发送数据
How to send Data from PHP server to Client
我是 web-technology 的新人。我正在尝试将数据从 PHP 服务器发送到客户端 test.html。但是只有 alert("1") 出现了,但是 alert("2") 没有打印 我只是想打印 Json 数据到 alert(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>
数据库是demo,用户名是root,密码是1234和table是注册
在jquery#
select或用于select一个元素的id
( 不是它的 name
属性 )。所以在你的按钮上添加一个 id
。
<input type="button" id="btnLogin" name="btnLogin" value="Login"/>
现在您的 $("#btnLogin").click()
函数应该可以工作了。
错误 1: 您输入的 ID 缺失。添加它
<input type="button" id="btnLogin" name="btnLogin" value="Login"/>
错误2: 你的ajax url结尾是php 但是你提到了api.html
url:"http://localhost/Experiements/webservices/api.php",
在 input
元素中使用 id
属性以在 javascript
中使用 #btnLogin
引用它
我是 web-technology 的新人。我正在尝试将数据从 PHP 服务器发送到客户端 test.html。但是只有 alert("1") 出现了,但是 alert("2") 没有打印 我只是想打印 Json 数据到 alert(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>
数据库是demo,用户名是root,密码是1234和table是注册
在jquery#
select或用于select一个元素的id
( 不是它的 name
属性 )。所以在你的按钮上添加一个 id
。
<input type="button" id="btnLogin" name="btnLogin" value="Login"/>
现在您的 $("#btnLogin").click()
函数应该可以工作了。
错误 1: 您输入的 ID 缺失。添加它
<input type="button" id="btnLogin" name="btnLogin" value="Login"/>
错误2: 你的ajax url结尾是php 但是你提到了api.html
url:"http://localhost/Experiements/webservices/api.php",
在 input
元素中使用 id
属性以在 javascript
#btnLogin
引用它