Rumah >pembangunan bahagian belakang >tutorial php >服务器端怎么向客户端发送数据

服务器端怎么向客户端发送数据

WBOY
WBOYasal
2016-06-13 11:55:431885semak imbas

服务器端如何向客户端发送数据?

本帖最后由 u014635406 于 2014-04-26 21:40:56 编辑 我用post方法向服务器端发送了一个用户名和密码,想利用php实现服务器对该行为的响应,返回一个登录成功的字符串,该如何实现呢?客户端又该如何获得这个字符串呢?
------解决方案--------------------
写了个demo,输入username=fdipzone,password=123456服务器回返回成功,否则返回失败。
client.html
<br /><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><br /><html><br /> <head><br />  <meta http-equiv="conent-type" content="text/html; charset=utf-8"><br />  <title> client post</title><br />  <script src="//code.jquery.com/jquery-1.11.0.min.js"></script><br /> </head><br /><br /> <body><br />  <script type="text/javascript"><br />  function fsubmit(){<br />	  $.post("server.php", { username: $("#username").val(), password: $("#password").val() },function(ret){<br />		if(ret.success==true){<br />			alert('login success');<br />		}else{<br />			alert('login fail');<br />		}<br />	  },'json');<br />  }<br />  </script><br />  <p>username:<input type="text" id="username"></p><br />  <p>password:<input type="text" id="password"></p><br />  <p><input type="button" value="submit" onclick="fsubmit()"></p><br /> <br /> </body><br /></html><br />

server.php
<br /><?php<br />$username = isset($_POST['username'])? $_POST['username'] : '';<br />$password = isset($_POST['password'])? $_POST['password'] : '';<br /><br />$ret = array();<br /><br />if($username=='fdipzone' && $password=='123456'){<br />    $ret['success'] = true;<br />}else{<br />    $ret['success'] = false;<br />}<br /><br />echo json_encode($ret);<br />?><br />

------解决方案--------------------
你就是按了一个按钮后,调用一个方法,然后方法里面再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']来获取
------解决方案--------------------
<br /><!DOCTYPE html><br /><html><br /><head><br />    <title></title><br />    <script<br />            src="http://code.jquery.com/jquery-latest.js"></script><br /></head><br /><body><br /><br /><script><br />    $(document).ready(function () {<br />        $.post('test.php?gettest=1', {"test": "test"}, function (data) {<br />            alert(data.get);<br />            alert(data.post);<br />        }, 'json')<br />    })<br /></script><br /></body><br /></html><br />


<br />$array = array(<br />    'get' => $_GET['gettest'],<br />    'post' => $_POST['test'],<br />);<br /><br />echo json_encode($array);<br />
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn