php的无刷新操作实现方法分析


Posted in PHP onFebruary 28, 2020

本文实例讲述了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相关内容可查看本站专题:《PHP+ajax技巧与应用小结》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php密码生成类实例
Sep 24 PHP
跟我学Laravel之配置Laravel
Oct 15 PHP
php通过获取头信息判断图片类型的方法
Jun 26 PHP
php获取错误信息的方法
Jul 17 PHP
PHP中的switch语句的用法实例详解
Oct 21 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
Aug 01 PHP
thinkphp分页实现效果
Oct 13 PHP
PHP使用mysqli操作MySQL数据库的简单方法
Feb 04 PHP
PHP SPL 被遗落的宝石【SPL应用浅析】
Apr 20 PHP
PHP中引用类型和值类型功能与用法示例
Feb 26 PHP
PHP项目多语言配置平台实现过程解析
May 18 PHP
php实现自动生成验证码的实例讲解
Nov 17 PHP
php下的原生ajax请求用法实例分析
Feb 28 #PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
Feb 27 #PHP
php使用fputcsv实现大数据的导出操作详解
Feb 27 #PHP
gearman中任务的优先级和返回状态实例分析
Feb 27 #PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 #PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
Feb 27 #PHP
gearman管理工具GearmanManager的安装与php使用方法示例
Feb 27 #PHP
You might like
可快速识别放射性物质-国外大神教你diy一个开放式辐射探测器
2020/03/12 无线电
PHP超级全局变量数组小结
2012/10/04 PHP
ThinkPHP多语言支持与多模板支持概述
2014/08/22 PHP
php绘图之加载外部图片的方法
2015/01/24 PHP
通过PHP自带的服务器来查看正则匹配结果的方法
2015/12/24 PHP
PHP 中TP5 Request 请求对象的实例详解
2017/07/31 PHP
redis+php实现微博(二)发布与关注功能详解
2019/09/23 PHP
不使用中间变量,交换int型的 a, b两个变量的值。
2010/10/29 Javascript
jquery.combobox中文api和例子,修复了上面的小bug
2011/03/28 Javascript
原生js 秒表实现代码
2012/07/24 Javascript
js 手机号码合法性验证代码集合
2012/09/29 Javascript
jQuery Masonry瀑布流插件使用详解
2014/11/17 Javascript
jQuery源码解读之removeAttr()方法分析
2015/02/20 Javascript
JS实现Select的option上下移动的方法
2016/03/01 Javascript
JavaScript必知必会(二) null 和undefined
2016/06/08 Javascript
基于JS+Canves实现点击按钮水波纹效果
2016/09/15 Javascript
详谈ES6中的迭代器(Iterator)和生成器(Generator)
2017/07/31 Javascript
Vue导出json数据到Excel电子表格的示例
2017/12/04 Javascript
JavaScript实现动态添加、移除元素或属性的方法分析
2019/01/03 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
[02:08:58]2014 DOTA2国际邀请赛中国区预选赛 Ne VS CIS
2014/05/22 DOTA
python操作mongodb根据_id查询数据的实现方法
2015/05/20 Python
Python中关键字nonlocal和global的声明与解析
2017/03/12 Python
python 3.6.4 安装配置方法图文教程
2018/09/18 Python
python3 mmh3安装及使用方法
2019/10/09 Python
基于Python制作一副扑克牌过程详解
2020/10/19 Python
意大利香水和化妆品购物网站:Parfimo.it
2019/10/06 全球购物
三八妇女节活动主持词
2014/03/17 职场文书
党员民主生活会材料
2014/12/15 职场文书
青年文明号申报材料
2014/12/23 职场文书
酒店员工辞职信范文
2015/02/28 职场文书
小区保洁员岗位职责
2015/04/10 职场文书
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang
Python socket如何解析HTTP请求内容
2022/02/12 Python
一次Mysql update sql不当引起的生产故障记录
2022/04/01 MySQL
Pandas 数据编码的十种方法
2022/04/20 Python