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 相关文章推荐
在apache下限制每个虚拟主机的并发数!!!!
Oct 09 PHP
服务器变量 $_SERVER 的深入解析
Jul 02 PHP
分享下PHP register_globals 值为on与off的理解
Sep 26 PHP
php curl_init函数用法
Jan 31 PHP
php读取远程gzip压缩网页的方法
Dec 29 PHP
PHP curl伪造IP地址和header信息代码实例
Apr 27 PHP
php实现文本数据导入SQL SERVER
May 17 PHP
CodeIgniter扩展核心类实例详解
Jan 20 PHP
PHP大文件分割上传 PHP分片上传
Aug 28 PHP
Laravel如何使用Redis共享Session
Feb 23 PHP
Laravel框架路由和控制器的绑定操作方法
Jun 12 PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
Dec 29 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
PHP初学者头疼问题总结
2006/10/09 PHP
利用PHP制作简单的内容采集器的代码
2007/11/28 PHP
php获取本周星期一具体日期的方法
2015/04/20 PHP
JavaScript 动态将数字金额转化为中文大写金额
2009/05/14 Javascript
Prototype 学习 工具函数学习($A方法)
2009/07/12 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
JQuery中使用on方法绑定hover事件实例
2014/12/09 Javascript
jQuery中live()方法用法实例
2015/01/19 Javascript
js实现文本框输入文字个数限制代码
2015/12/25 Javascript
jQuery简单实现上下,左右滑动的方法
2016/06/01 Javascript
js canvas实现擦除动画
2016/07/16 Javascript
jQuery Easyui datagrid editor为combobox时指定数据源实例
2016/12/19 Javascript
微信小程序左右滑动切换页面详解及实例代码
2017/02/28 Javascript
vue的diff算法知识点总结
2018/03/29 Javascript
原生JS实现动态加载js文件并在加载成功后执行回调函数的方法
2020/12/30 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
详解elementui之el-image-viewer(图片查看器)
2019/08/30 Javascript
浅谈vuex的基本用法和mapaction传值问题
2019/11/08 Javascript
[01:08:10]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS LGD-CDEC
2014/05/22 DOTA
python中字典dict常用操作方法实例总结
2015/04/04 Python
在Python的Django框架中创建语言文件
2015/07/27 Python
Python+django实现简单的文件上传
2016/08/17 Python
详解Python读取配置文件模块ConfigParser
2017/05/11 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
python调用有道智云API实现文件批量翻译
2020/10/10 Python
python切片作为占位符使用实例讲解
2021/02/17 Python
H5仿微信界面教程(一)
2017/07/05 HTML / CSS
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
简历中个人自我评价范文
2013/12/26 职场文书
十佳美德少年事迹材料
2014/02/05 职场文书
大学老师推荐信
2014/02/25 职场文书
党的群众路线教育实践活动个人对照检查材料(医生)
2014/11/05 职场文书
酒店前台岗位职责
2015/04/16 职场文书
聘任合同书
2015/09/21 职场文书
CSS实现单选折叠菜单功能
2021/11/01 HTML / CSS