利用ajax提交form表單到數(shù)據(jù)庫詳解(無刷新)
大家應(yīng)該都知道,在靜態(tài)頁面提交表單到數(shù)據(jù)庫很簡單就是單純的
<form action="test.php" method="post"> </form>
這個缺點(diǎn)是會刷新頁面,會跳轉(zhuǎn)頁面的。
今天給大家?guī)淼募夹g(shù)就是ajax提交表單
優(yōu)點(diǎn)是不刷新頁面,不跳轉(zhuǎn)頁面,靜默提交的。
至于什么是ajax,自己去百度了解。
首先我們得要有一個表單提交頁面:
index.html
這個頁面由兩個部分組成
1、表單控件
2、jQuery+ajax處理腳本
jQuery腳本會獲取form表單的數(shù)據(jù),通過post的方式提交給api.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>login test</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
function insert() {
$.ajax({
type: "POST",//方法
url: "api.php" ,//表單接收url
data: $('#form1').serialize(),
success: function () {
//提交成功的提示詞或者其他反饋代碼
var result=document.getElementById("success");
result.innerHTML="成功!";
},
error : function() {
//提交失敗的提示詞或者其他反饋代碼
var result=document.getElementById("success");
result.innerHTML="失敗!";
}
});
}
</script>
</head>
<body>
<div id="form-div">
<form id="form1" onsubmit="return false" action="##" method="post">
<p><input name="title" id="title" type="text" value="title"/></p>
<p><input name="url" id="url" type="text" value="url"/></p>
<p><input type="button" value="插入" onclick="insert()"></p>
<p><div id="success"></div></p>
</form>
</div>
</body>
</html>
下面就是表單接收頁面
api.php
該頁面其實很簡單
就是連接數(shù)據(jù)庫
然后插入數(shù)據(jù)庫
插入數(shù)據(jù)庫的兩個值為
title和url
<?php
$title = $_POST['title'];
$url = $_POST['url'];
$con = mysql_connect("localhost","root","root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("test", $con);
mysql_query("INSERT INTO testdata (title, url)
VALUES ('$title', '$url')");
mysql_close($con);
?>
然后我們需要建立好一個數(shù)據(jù)庫
數(shù)據(jù)庫名為test,表名為testdata
下面是數(shù)據(jù)庫截圖

到此,本次案例完成。
當(dāng)然上面的代碼只是簡單的實現(xiàn)了ajax提交form表單
但是還有很多細(xì)節(jié)需要優(yōu)化,例如表單驗證,數(shù)據(jù)加密等,可以自己拓展學(xué)習(xí),完善。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
解決ajax跨域請求數(shù)據(jù)cookie丟失問題
本文主要是從前端jquery和服務(wù)端php為例,分別使用實例解決ajax跨域請求數(shù)據(jù)cookie丟失問題,推薦給有相同需求的小伙伴們。2015-03-03
Ajax修改數(shù)據(jù)即時顯示篇實現(xiàn)代碼
上一篇我們講了如何使用ajax向數(shù)據(jù)庫添加數(shù)據(jù),今天我們要大家學(xué)習(xí)的課程是:使用ajax修改數(shù)據(jù)庫數(shù)據(jù),并在客戶網(wǎng)頁立即顯示新的內(nèi)容.當(dāng)然在修改的過程中同樣不會有刷新網(wǎng)頁的情況發(fā)生!2010-10-10
探討.get .post .ajax ztree 還有后臺servlet傳遞數(shù)據(jù)的相關(guān)知識
這篇文章主要介紹了探討.get .post .ajax ztree 還有后臺servlet傳遞數(shù)據(jù)的相關(guān)知識,需要的朋友可以參考下2015-12-12
ajax結(jié)合豆瓣搜索結(jié)果進(jìn)行分頁完整代碼
這篇文章主要為大家詳細(xì)介紹了ajax結(jié)合豆瓣搜索結(jié)果進(jìn)行分頁完整代碼,具有一定的參考價值,感興趣的朋友可以參考一下2016-10-10
通達(dá)OA 使用Ajax和工作流插件實現(xiàn)根據(jù)人力資源系統(tǒng)數(shù)據(jù)增加OA賬號(圖文詳解)
這篇文章主要介紹了通達(dá)OA 使用Ajax和工作流插件實現(xiàn)根據(jù)人力資源系統(tǒng)數(shù)據(jù)增加OA賬號(圖文詳解),需要的朋友可以參考下2016-12-12

