服务器端如何向客户端发送数据?
本帖最后由 u014635406 于 2014-04-26 21:40:56 编辑
我用post方法向服务器端发送了一个用户名和密码,想利用php实现服务器对该行为的响应,返回一个登录成功的字符串,该如何实现呢?客户端又该如何获得这个字符串呢?
------解决方案--------------------
写了个demo,输入username=fdipzone,password=123456服务器回返回成功,否则返回失败。
client.html
HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
client postfunction fsubmit(){
$.post("server.php", { username: $("#username").val(), password: $("#password").val() },function(ret){
if(ret.success==true){
alert('login success');
}else{
alert('login fail');
}
},'json');
}
username:
password:
server.php
$username = isset($_POST['username'])? $_POST['username'] : '';
$password = isset($_POST['password'])? $_POST['password'] : '';
$ret = array();
if($username=='fdipzone' && $password=='123456'){
$ret['success'] = true;
}else{
$ret['success'] = false;
}
echo json_encode($ret);
?>
------解决方案--------------------
你就是按了一个按钮后,调用一个方法,然后方法里面再callback其他方法。直到流程走完。
可以这样写。
function fsubmit(){
$.post("server.php", { username: $("#username").val(), password: $("#password").val() },function(ret){
if(ret.success==true){
// 登入成功,这里可以调用第二个方法
doSecondFunc();
}else{
alert('login fail');
}
},'json');
}
function doSecondFunc(){
// do sth
如果还有,可以在这里再调用 thrid function
}
------解决方案--------------------
引用:地址中可以加入参数吗,比如“server.php?a=1”,这样可以吗?
可以 但是 a 需要使用$_GET['a']来获取
------解决方案--------------------
html>
$(document).ready(function () {
$.post('test.php?gettest=1', {"test": "test"}, function (data) {
alert(data.get);
alert(data.post);
}, 'json')
})
$array = array(
'get' => $_GET['gettest'],
'post' => $_POST['test'],
);
echo json_encode($array);