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 相关文章推荐
做一个有下拉功能的留言版
Oct 09 PHP
使用eAccelerator加密PHP程序
Oct 03 PHP
php中函数的形参与实参的问题说明
Sep 01 PHP
使用PHP遍历文件夹与子目录的函数代码
Sep 26 PHP
分享3个php获取日历的函数
Sep 25 PHP
PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠
Sep 30 PHP
php实现贪吃蛇小游戏
Jul 26 PHP
AES加解密在php接口请求过程中的应用示例
Oct 26 PHP
php解决DOM乱码的方法示例代码
Nov 20 PHP
asp函数split()对应php函数explode()
Feb 27 PHP
Laravel timestamps 设置为unix时间戳的方法
Oct 11 PHP
一次项目中Thinkphp绕过禁用函数的实战记录
Nov 17 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 ignore_user_abort函数详细介绍和使用实例
2014/07/15 PHP
php多进程应用场景实例详解
2019/07/22 PHP
基于jquery的横向滚动条(滑动条)
2011/02/24 Javascript
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
jQuery 绑定事件到动态创建的元素上的方法实例
2013/08/18 Javascript
Javascript实现页面跳转的几种方式分享
2013/10/26 Javascript
高性能JavaScript循环语句和条件语句
2016/01/20 Javascript
JavaScript实现仿淘宝商品购买数量的增减效果
2016/01/22 Javascript
基于angularjs实现图片放大镜效果
2016/08/31 Javascript
Vue.js父与子组件之间传参示例
2017/02/28 Javascript
Bootstrap栅格系统简单实现代码
2017/03/06 Javascript
js实现下拉框效果(select)
2017/03/28 Javascript
微信小程序微信支付接入开发实例详解
2017/04/12 Javascript
bootstrap multiselect下拉列表功能
2017/08/22 Javascript
详解vue-cli官方脚手架配置
2018/07/20 Javascript
vue-cli 3.x配置跨域代理的实现方法
2019/04/12 Javascript
layui输入框中只允许输入整数的实现方法
2019/09/18 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
countUp.js实现数字动态变化效果
2019/10/17 Javascript
解决在Vue中使用axios用form表单出现的问题
2019/10/30 Javascript
python在windows下实现ping操作并接收返回信息的方法
2015/03/20 Python
Python3实现从文件中读取指定行的方法
2015/05/22 Python
Python设计模式之门面模式简单示例
2018/01/09 Python
Python实现读写INI配置文件的方法示例
2018/06/09 Python
python中单例常用的几种实现方法总结
2018/10/13 Python
Python3.5文件修改操作实例分析
2019/05/01 Python
Converse匡威法国官网:美国著名帆布鞋品牌
2018/12/05 全球购物
捷克街头、运动和滑板一站式商店:BoardStar.cz
2019/10/06 全球购物
Quiksilver美国官网:始于1969年的优质冲浪服和滑雪板外套
2020/04/20 全球购物
大学生毕业求职自荐书范文
2014/02/04 职场文书
美术毕业生求职信
2014/02/25 职场文书
法律六进活动方案
2014/03/13 职场文书
祖国在我心中演讲稿600字
2014/09/23 职场文书
违纪检讨书范文
2015/01/27 职场文书
pytorch实现线性回归以及多元回归
2021/04/11 Python
编写python程序的90条建议
2021/04/14 Python