美文网首页PHP实战PHP经验分享
一个简单的PHP服务端与客户端

一个简单的PHP服务端与客户端

作者: 破旧的大卡车 | 来源:发表于2018-03-25 21:44 被阅读76次

    下面的代码实现了:

    • 客户端获取服务端数据(array)
    • 客户端提交数据到服务端(post)
    • 提交后重定向到客户端并更新数据(利用session)

    server.php

    <?php
    //server
    session_start();
    //get post data
    $target='测试';
    if($_SERVER['REQUEST_METHOD']==='POST'){
      $target=$_POST['target'];
    }
    //redirect
    $url='server';
    if(isset($_SERVER["HTTP_REFERER"])){
      header("Location: {$_SERVER["HTTP_REFERER"]}");
      $url='client';
    }
    $_SESSION['data']=
      serialize(
        array_map(
          'utf8_encode',
          array(
            'lang'=>'PHP',
            'target'=> $target,
            'url'=>$url
          )
        )
      );
    echo $_SESSION['data'];
    ?>
    

    client.php

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset='utf-8' />
        <body>
          <div id='get_data'>
            <p>Get Data from server:<br />
            <?php
              //client
              session_start();
              $server = 'http://localhost:8080/server.php';
    
              if(isset($_SESSION['data'])){
                $result=$_SESSION['data'];
                session_destroy();
              }else{
                $result = file_get_contents($server);
              }
              if( !is_null($result) ){
                foreach( unserialize($result) as $key=>$r)
                {
                  echo $key . ':' . utf8_decode($r).'<br />';
                }
              }
            ?>
            </p>
          </div>
          <div id='post_data'>
            <form action='server.php' name='postform' method='post'>
              <input name='target' value='POST' />
              <input type='submit' />
            </form>
          </div>
        </body>
    </html>
    

    自己修改下服务器地址。

    相关文章

      网友评论

        本文标题:一个简单的PHP服务端与客户端

        本文链接:https://www.haomeiwen.com/subject/tgvkcftx.html