• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

html如何与php数据交互

php 搞代码 4年前 (2022-01-04) 29次浏览 已收录 0个评论

php文件与HTML页面的数据交互

HTML发送(使用POST发送)

<!doctype html><html><head><meta charset="utf-8"><title>无标题文档</title></head><body>    <div class='search-choose' id='search_choose'>        <ul>             <li id='search_1' class='search-selected'><a href='#'>dog</a></li>            <li id='search_2'><a href='#'>cat</a></li>        </ul>    </div>        <script type='text/javascript'>      searchArray = document.getElementsByTagName('li');//获取名字为’li’的所有标签项并存入数组      var writeArray = [];      for(var i = 0;i<searchArray.length;i++){          writeArray[i] = searchArray[i].innerText;//获取标签内容writeArray = ['dog','cat'];      }          //使用POST将数组writeArray发送到php文件servertest.php      var request = new XMLHttpRequest();      request.open("POST", "servertest.php");      var q = "data=" + writeArray;//  q="name"+ value;      //发送内容体由name+value组成,此处name为data,value为writeArray      request.setRequestHeader("Content-type","application/x-www-form-urlencoded");      request.send(q);      request.onreadystatechange = function() {          if (request.readyState===4) {          if (request.status===200) {           } else {                  alert("发生错误:" + request.status);              }          }       }    </script></body></html>

注:关键操作

var request = new XMLHttpRequest();request.open("POST", "servertest.php");var q = "data=" + writeArray;// 生成信息体q = “name “+ valuerequest.setRequestHeader("Content-type","application/<strong style="color:transparent">来源gao@daima#com搞(%代@#码网</strong>x-www-form-urlencoded");request.send(q);//HTML页面POST发送内容后,php通过超全局变量 $_GET 和 $_POST收集

php接收(使用超全局变量$_GET 和 $_POST收集)

<?php//设置页面内容是html编码格式是utf-8header("Content-Type: text/plain;charset=utf-8"); //判断如果是get请求,则执行getMethod();;如果是POST请求,则执行postMethod()。//$_SERVER是一个超全局变量,在一个脚本的全部作用域中都可用,不用使用global关键字if ($_SERVER["REQUEST_METHOD"] == "GET") {    getMethod();} elseif ($_SERVER["REQUEST_METHOD"] == "POST"){    postMethod();}function searchShow(){    }function postMethod(){    $filename = 'save.txt';//使用超全局变量 $_GET 和 $_POST收集name对应的value,如下    $searchWrite = $_POST["data"];//将获取的HTML返回内容$searchWrite写入文档save.txt    file_put_contents($filename, $searchWrite);    $content = file_get_contents($filename);    echo $content;}

注:关键操作

searchWrite=searchWrite=_POST["data"];

使用超全局变量 $_POST收集name对应的value放入$searchWrite,于是得到了HTML页面发送的数据,可以用了

HTML页面通过json获取php的变量

php发送(通过echo返回json格式的数据对)

<?phpheader('Access-Control-Allow-Origin:*');header('Access-Control-Allow-Methods:POST,GET');header('Access-Control-Allow-Credentials:true'); header("Content-Type: application/json;charset=utf-8"); if ($_SERVER["REQUEST_METHOD"] == "GET") {    getMethod();} elseif ($_SERVER["REQUEST_METHOD"] == "POST"){    postMethod();}function getMethod(){        $filename = 'search_save.txt';//假设文件内容为dog,cat,pig,人    if (file_exists($filename)) {        $content = file_get_contents($filename);        $pattern = '/[\x{4e00}-\x{9fa5}_a-zA-Z0-9]+/u';        //[\x{4e00}-\x{9fa5}_a-zA-Z0-9]匹配中文、下划线、字母、数字        preg_match_all($pattern, $content, $matches);        $searchRead = $matches[0];//通过正则表达式提取存储列表到$searchRead数组['dog','cat','pig','人']        $defaultSearch = $searchRead[0];        $result = '{"success":false,"defaultSearch":""}';        if($_GET["data"]){            $result = '{"success":true,"defaultSearch":"'.$defaultSearch.'"}';        }    }    echo $result;//echo返回json格式化数据对{"success":true,"defaultSearch":"'.$defaultSearch.'"} } functionpostMethod(){}

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:html如何与php数据交互

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址