您现在的位置是:群英 > 开发技术 > PHP语言
PHP怎样实现无刷新操作,原理和方法是什么?
Admin发表于 2021-12-07 17:56:03927 次浏览

    在实际的项目中,我们有时候会遇到实现无刷新操作的需求,对此本文就给大家来分享一下用PHP怎样实现无刷新操作,下文给大家介绍了四种方法,示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。

    方法一:

    我们通过http的204状态码,页面不跳转。

    1.html代码如下:

<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title></title>
</head>
<body>
  <a href="./add.php" rel="external nofollow" >投票</a>
</body>
</html>

    add.php代码如下:

<?php
$num = file_get_contents('./num.txt');
$num = intval($num) + 1;
file_put_contents('./num.txt', $num);

header('HTTP/1.1 204 No Content');

    方法二:

    利用图片加载的特性,来完成请求。

<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title></title>
</head>
<body>
  <input type="button" value="投票" id="addBtn" />
  <div id="request"></div>
</body>
<script type="">
  var addBtn = document.getElementById("addBtn");
  addBtn.onclick = function() {
    //创建img标签
    var img = document.createElement("img");

    //设置标签src属性
    img.setAttribute("src", "add.php");
    document.createElement("request").appendChild(img);
  };
</script>
</html>

    方法三:

    利用css,javascript的加载特性,完成请求,原理与img加载一样。

    方法四:

    利用iframe的特性

    2.html代码如下:

<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title></title>
</head>
<body>
  <form action="ret.php" method="post" target="request">
    用户名:<input type="text" name="uname" value="" />
    密码:<input type="password" name="upwd" value="" />
    <input type="submit" name="submit" value="提交" />
  </form>
  <iframe width="0" height="0" frameborder="0" name="request"></iframe>
  <div id="result"></div>
</body>
</html>

    ret.php代码如下:

<?php
$uname = !empty($_POST['uname']) ? $_POST['uname'] : '';
$upwd = !empty($_POST['upwd']) ? $_POST['upwd'] : '';

if($uname == 'admin' && $upwd == '123456') {
  echo "<script>parent.document.getElementById('result').innerHTML='OK';</script>";
} else {
  echo "<script>parent.document.getElementById('result').innerHTML='NO';</script>";
}

    我们通过设置form提交的target到iframe,使表单无跳转。

    ajax能实现文件上传吗?

分析,文件上传,是需要客户端把文件内容发送到服务器,也就是XHR对象在POST数据时,把文件内容也发送给服务器。
也就是XHR对象能够获取你要上传的文件内容,但是出于安全的考虑,JS是无法获取本地文件内容的。

    ajax插件是如何实现文件上传的?

1、iframe
2、flash实现,如swfupload
3、html5 (添加了文件读取api,使ajax上传文件成为可能。)

    关于PHP怎样实现无刷新操作的内容就介绍到这,本文代码仅供参考,上述几种方法有一定的参考按机制,感兴趣的朋友可以了解看看,希望能对大家有帮助,想要了解更多大家可以关注其它的相关文章。

文本转载自脚本之家

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: 无刷新操作
相关信息推荐
2022-06-06 17:11:11 
摘要:go语言常用命令有:1、go build;2、go clean;3、go fmt;4、go get;5、go install;6、go test;7、go doc;8、go fix;9、go version;10、go list。
2022-09-30 17:55:25 
摘要:Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示的程序,这篇文章主要介绍了在VSCode里使用Jupyter Notebook,调试Java代码,需要的朋友可以参考下
2022-07-18 17:29:18 
摘要:PHP的中文意思为“超文本预处理器”,是一种跨平台的、开源的、免费、在服务器端执行的脚本语言,其语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。jsp的中文意思为“java服务器页面”,是一种动态网页开发技术;JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部