php HTML無刷新提交表單
通常對(duì)于無刷新提交表單,我們都是運(yùn)用ajax實(shí)現(xiàn)的。前段時(shí)間跟著老大了解到另一種無刷新提交表單的方法,是利用iframe框架實(shí)現(xiàn)的?,F(xiàn)在整理出來分享給大家。
第一種:
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提交數(shù)據(jù)。 -->
<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
//非空驗(yàn)證
if(empty($_POST['uname']) || empty($_POST['pwd']))
{
echo '<script type="text/javascript">alert("用戶名或密碼為空!");</script>';
exit;
}
//驗(yàn)證密碼
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數(shù)據(jù)轉(zhuǎn)為json對(duì)象
var obj = eval("("+html+")");
//判斷返回的狀態(tài)
if(obj.status < 1){
alert(obj.msg);
}else{
alert(obj.msg);
window.location.;
}
}
}
</script>
</body>
</html>
PHP頁面:form.php
<?php
//設(shè)置時(shí)區(qū)
date_default_timezone_set('PRC');
/*
返回的提交消息
status:狀態(tài)
msg:提示信息
*/
$msg = array('status'=>0,'msg'=>'');
//獲取提交過來的數(shù)據(jù)
$name = $_POST['username'];
$pwd = $_POST['userpwd'];
//模擬登錄驗(yàn)證
$user = array();
$user['name'] = 'jack';
$user['pwd'] = 'jack2014';
if($name != $user['name']){
$msg['msg'] = '該用戶未注冊(cè)!';
$str = json_encode($msg);
echo $str;
exit;
}else if($pwd != $user['pwd']){
$msg['msg'] = '輸入的密碼錯(cuò)誤!';
$str = json_encode($msg);
echo $str;
exit;
}
$msg['msg'] = '登錄成功!';
$msg['status'] = 1;
$str = json_encode($msg);
echo $str;
以上就是本文的全部內(nèi)容,希望對(duì)大家學(xué)習(xí)php程序設(shè)計(jì)有所幫助。
- php+html5使用FormData對(duì)象提交表單及上傳圖片的方法
- 使用PHP和HTML5 FormData實(shí)現(xiàn)無刷新文件上傳教程
- php提交表單時(shí)判斷 if($_POST[submit])與 if(isset($_POST[submit])) 的區(qū)別
- php 多個(gè)submit提交表單 處理方法
- 提交表單后 PHP獲取提交內(nèi)容的實(shí)現(xiàn)方法
- PHP提交表單失敗后如何保留已經(jīng)填寫的信息
- PHP防止跨域提交表單
- php防止用戶重復(fù)提交表單
- Ajax提交表單時(shí)驗(yàn)證碼自動(dòng)驗(yàn)證 php后端驗(yàn)證碼檢測(cè)
- php自動(dòng)提交表單的方法(基于fsockopen與curl)
- PHP使用HTML5 FormData對(duì)象提交表單操作示例
相關(guān)文章
在PHP程序中運(yùn)行Python腳本(接收數(shù)據(jù)及傳參)的方法詳解
這篇文章主要為大家詳細(xì)介紹一下,如何在php程序中運(yùn)行Python腳本以及如何使用python返回josn數(shù)據(jù)供php使用,感興趣的小伙伴可以了解一下2022-09-09
Centos 6.5下PHP 5.3安裝ffmpeg擴(kuò)展的步驟詳解
大家都知道ffmpeg是一款視頻流的軟件了,我們?cè)趌inux系統(tǒng)中可以安裝ffmpeg了,這篇文章主要介紹了在Centos 6.5下PHP 5.3安裝ffmpeg擴(kuò)展的步驟,需要的朋友可以參考下。2017-03-03
使用PHP反射機(jī)制來構(gòu)造"CREATE TABLE"的sql語句
今天小編就為大家分享一篇關(guān)于使用PHP反射機(jī)制來構(gòu)造"CREATE TABLE"的sql語句,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03
4種Windows系統(tǒng)下Laravel框架的開發(fā)環(huán)境安裝及部署方法詳解
這篇文章主要介紹了4種Windows系統(tǒng)下Laravel框架的開發(fā)環(huán)境安裝及部署方法詳解,需要的朋友可以參考下2020-04-04
PHP回調(diào)函數(shù)及匿名函數(shù)概念與用法詳解
這篇文章主要介紹了PHP回調(diào)函數(shù)及匿名函數(shù)概念與用法,結(jié)合實(shí)例形式詳細(xì)分析了PHP回調(diào)函數(shù)及匿名函數(shù)的概念、功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-03-03

