利用ajax提交form表單到數(shù)據(jù)庫(kù)詳解(無(wú)刷新)
大家應(yīng)該都知道,在靜態(tài)頁(yè)面提交表單到數(shù)據(jù)庫(kù)很簡(jiǎn)單就是單純的
<form action="test.php" method="post"> </form>
這個(gè)缺點(diǎn)是會(huì)刷新頁(yè)面,會(huì)跳轉(zhuǎn)頁(yè)面的。
今天給大家?guī)?lái)的技術(shù)就是ajax提交表單
優(yōu)點(diǎn)是不刷新頁(yè)面,不跳轉(zhuǎn)頁(yè)面,靜默提交的。
至于什么是ajax,自己去百度了解。
首先我們得要有一個(gè)表單提交頁(yè)面:
index.html
這個(gè)頁(yè)面由兩個(gè)部分組成
1、表單控件
2、jQuery+ajax處理腳本
jQuery腳本會(huì)獲取form表單的數(shù)據(jù),通過(guò)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>
下面就是表單接收頁(yè)面
api.php
該頁(yè)面其實(shí)很簡(jiǎn)單
就是連接數(shù)據(jù)庫(kù)
然后插入數(shù)據(jù)庫(kù)
插入數(shù)據(jù)庫(kù)的兩個(gè)值為
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);
?>
然后我們需要建立好一個(gè)數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)名為test,表名為testdata
下面是數(shù)據(jù)庫(kù)截圖

到此,本次案例完成。
當(dāng)然上面的代碼只是簡(jiǎn)單的實(shí)現(xiàn)了ajax提交form表單
但是還有很多細(xì)節(jié)需要優(yōu)化,例如表單驗(yàn)證,數(shù)據(jù)加密等,可以自己拓展學(xué)習(xí),完善。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
- jquery實(shí)現(xiàn)ajax提交form表單的方法總結(jié)
- jQuery實(shí)現(xiàn)form表單基于ajax無(wú)刷新提交方法詳解
- jquery序列化form表單使用ajax提交后處理返回的json數(shù)據(jù)
- jquery的ajax提交form表單的兩種方法小結(jié)(推薦)
- Jquery基于Ajax方法自定義無(wú)刷新提交表單Form實(shí)例
- AJAX PHP無(wú)刷新form表單提交的簡(jiǎn)單實(shí)現(xiàn)(推薦)
- 使用Ajax方法實(shí)現(xiàn)Form表單的提交及注意事項(xiàng)
- Ajax提交Form表單及文件上傳的實(shí)例代碼
- jQuery ajax提交Form表單實(shí)例(附demo源碼)
相關(guān)文章
非常簡(jiǎn)單的Ajax請(qǐng)求實(shí)例附源碼
這篇文章為大家推薦了一個(gè)非常簡(jiǎn)單的Ajax請(qǐng)求實(shí)例,可以在不重載頁(yè)面的情況與 Web 服務(wù)器交換數(shù)據(jù),感興趣的小伙伴們可以參考一下2015-11-11
Ajax獲取php返回json數(shù)據(jù)動(dòng)態(tài)生成select下拉框的實(shí)例
今天小編就為大家分享一篇Ajax獲取php返回json數(shù)據(jù)動(dòng)態(tài)生成select下拉框的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
Ajax實(shí)現(xiàn)無(wú)刷新分頁(yè)實(shí)例代碼
這篇文章主要介紹了Ajax實(shí)現(xiàn)無(wú)刷新分頁(yè)實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03
Ajax實(shí)現(xiàn)動(dòng)態(tài)加載數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了Ajax動(dòng)態(tài)加載數(shù)據(jù)的小例子,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
滑輪滾動(dòng)到頁(yè)面底部ajax加載數(shù)據(jù)配合jsonp實(shí)現(xiàn)探討
滾動(dòng)下拉到頁(yè)面底部加載數(shù)據(jù)是很多瀑布流網(wǎng)站的做法,那來(lái)看看配合jsonp是如何實(shí)現(xiàn)的吧,小菜總結(jié)記錄之用特在此與大家一起分享,感興趣的朋友可以參考下哈2013-05-05
Ajax實(shí)現(xiàn)跨域訪問(wèn)最新解決方案
在項(xiàng)目開(kāi)發(fā)過(guò)程中,我們經(jīng)常會(huì)遇到同一個(gè)域名下不同項(xiàng)目之間通過(guò)Ajax相互調(diào)用數(shù)據(jù),這樣問(wèn)題就來(lái)了,如何通過(guò)Ajax實(shí)現(xiàn)跨域呢?下面腳本之家小編給大家?guī)?lái)了Ajax實(shí)現(xiàn)跨域訪問(wèn)最新解決方案,感興趣的朋友一起看看吧2018-07-07
Ajax與mysql數(shù)據(jù)交互制作留言板功能(全)
這篇文章主要為大家詳細(xì)介紹了Ajax與mysql數(shù)據(jù)交互,實(shí)現(xiàn)留言板功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02

