php HTML无刷新提交表单


Posted in PHP onApril 05, 2016

通常对于无刷新提交表单,我们都是运用ajax实现的。前段时间跟着老大了解到另一种无刷新提交表单的方法,是利用iframe框架实现的。现在整理出来分享给大家。
第一种:
html页面

<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <meta charset="utf-8">
  <title>无刷新提交表单</title>
  <style type="text/css">
    ul{ list-style-type:none;}
  </style>
</head>
<body>
  <iframe name="formsubmit" style="display:none;">
  </iframe>
  
  <!-- 将form表单提交的窗口指向隐藏的ifrmae,并通过ifrmae提交数据。 -->
  <form action="form.php" method="POST" name="formphp" target="formsubmit">
    <ul>
      <li>
        <label for="uname">用户名:</label>
        <input type="text" name="uname" id="uname" />
      </li>
      <li>
        <label for="pwd">密 码:</label>
        <input type="password" name="pwd" id="pwd" />
      </li>
      <li>
        <input type="submit" value="登录" />
      </li>
    </ul>
  </form>
</body>
</html>

PHP页面:form.php

<?php
 //非空验证
 if(empty($_POST['uname']) || empty($_POST['pwd']))
 {
  echo '<script type="text/javascript">alert("用户名或密码为空!");</script>';
  exit;
 }
 
 //验证密码
 if($_POST['uname'] != 'jack' || $_POST['pwd'] != '123456')
 {
  echo '<script type="text/javascript">alert("用户名或密码不正确!");</script>';
  exit;
 } else {
  echo '<script type="text/javascript">alert("登录成功!");</script>';
  exit;
 }

第二种:
html页面

<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <meta charset="utf-8">
  <title>iframe提交表单</title>
</head>
<body>
  <iframe name="myiframe" style="display:none;" onload="iframeLoad(this);"></iframe>
  <form action="form.php" target="myiframe" method="POST">
   用户名:<input type="text" name="username" /><br/>
   密 码:<input type="password" name="userpwd" /><br/>
   
   <input type="submit" value="登录" />
  </form>
  
  <script type="text/javascript">
   function iframeLoad(iframe){
    var doc = iframe.contentWindow.document;
    var html = doc.body.innerHTML;
    if(html != ''){
     //将获取到的json数据转为json对象
     var obj = eval("("+html+")");
     //判断返回的状态
     if(obj.status < 1){
      alert(obj.msg);
     }else{
      alert(obj.msg);
      window.location.href="http://www.baidu.com";
     }
    }
   }
  </script>
</body>
</html>

PHP页面:form.php

<?php
 //设置时区
 date_default_timezone_set('PRC');
 /*
  返回的提交消息
  status:状态
  msg:提示信息
 */
 $msg = array('status'=>0,'msg'=>'');
 
 //获取提交过来的数据
 $name = $_POST['username'];
 $pwd = $_POST['userpwd'];
 
 //模拟登录验证
 $user = array();
 $user['name'] = 'jack';
 $user['pwd'] = 'jack2014';
 
 if($name != $user['name']){
  $msg['msg'] = '该用户未注册!';
  $str = json_encode($msg);
  echo $str;
  exit;
 }else if($pwd != $user['pwd']){
  $msg['msg'] = '输入的密码错误!';
  $str = json_encode($msg);
  echo $str;
  exit;
 }
 
 $msg['msg'] = '登录成功!';
 $msg['status'] = 1;
 $str = json_encode($msg);
 echo $str;

以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。

PHP 相关文章推荐
用IE远程创建Mysql数据库的简易程序
Oct 09 PHP
PHP语法速查表
Jan 02 PHP
php实现单链表的实例代码
Mar 22 PHP
使用array mutisort 实现按某字段对数据排序
Jun 18 PHP
php中header设置常见文件类型的content-type
Jun 23 PHP
PHP扩展Memcache分布式部署方案
Dec 06 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
ThinkPHP中where()使用方法详解
Apr 19 PHP
php如何修改SESSION的生存存储时间的实例代码
Jul 05 PHP
PHP使用curl_multi实现并发请求的方法示例
Apr 29 PHP
微信公众号开发之获取位置信息php代码
Jun 13 PHP
PHP设计模式之装饰器模式定义与用法简单示例
Aug 13 PHP
PHP如何使用Memcached
Apr 05 #PHP
初识PHP中的Swoole
Apr 05 #PHP
PHP中file_exists使用中遇到的问题小结
Apr 05 #PHP
PHP读取大文件的多种方法介绍
Apr 04 #PHP
PHP如何将XML转成数组
Apr 04 #PHP
php自动加载方式集合
Apr 04 #PHP
php文件上传的两种实现方法
Apr 04 #PHP
You might like
19个超实用的PHP代码片段
2014/03/14 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
php实现支付宝当面付(扫码支付)功能
2018/05/30 PHP
PHP多进程通信-消息队列使用
2019/03/08 PHP
Javascript开发包大全整理
2006/12/22 Javascript
window.open()弹出居中的窗口
2007/02/01 Javascript
任意位置显示html菜单
2007/02/01 Javascript
javascript最常用与实用的创建类的代码
2010/08/12 Javascript
jQuery之日期选择器的深入解析
2013/06/19 Javascript
js实现带有介绍的Select列表菜单实例
2015/08/18 Javascript
jQuery插件passwordStrength密码强度指标详解
2016/06/24 Javascript
原生态js,鼠标按下后,经过了那些单元格的简单实例
2016/08/11 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
2016/12/14 Javascript
jQuery EasyUI Draggable拖动组件
2017/03/01 Javascript
详解vuex 中的 state 在组件中如何监听
2017/05/23 Javascript
详解基于iview-ui的导航栏路径(面包屑)配置
2019/02/22 Javascript
vue watch监控对象的简单方法示例
2021/01/07 Vue.js
利用Python进行异常值分析实例代码
2017/12/07 Python
python PyQt5/Pyside2 按钮右击菜单实例代码
2019/08/17 Python
python文件读写代码实例
2019/10/21 Python
利用python生成照片墙的示例代码
2020/04/09 Python
使用keras实现非线性回归(两种加激活函数的方式)
2020/07/05 Python
Python常用数据分析模块原理解析
2020/07/20 Python
Python3基于plotly模块保存图片表格
2020/08/03 Python
Python批量修改xml的坐标值全部转为整数的实例代码
2020/11/26 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
教你使用Canvas处理图片的方法
2017/11/28 HTML / CSS
思想汇报范文
2013/11/04 职场文书
哈弗商学院毕业生求职信
2014/02/26 职场文书
计算机网络专业求职信
2014/06/05 职场文书
篮球比赛拉拉队口号
2014/06/10 职场文书
财务会计实训报告
2014/11/05 职场文书
2015年民主生活会发言材料
2014/12/15 职场文书
求职自我评价范文
2015/03/09 职场文书
python3+PyQt5+Qt Designer实现界面可视化
2021/06/10 Python
css3新特性的应用示例分析
2022/03/16 HTML / CSS