利用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)文章
解決ajax跨域請(qǐng)求數(shù)據(jù)cookie丟失問(wèn)題
本文主要是從前端jquery和服務(wù)端php為例,分別使用實(shí)例解決ajax跨域請(qǐng)求數(shù)據(jù)cookie丟失問(wèn)題,推薦給有相同需求的小伙伴們。2015-03-03Ajax修改數(shù)據(jù)即時(shí)顯示篇實(shí)現(xiàn)代碼
上一篇我們講了如何使用ajax向數(shù)據(jù)庫(kù)添加數(shù)據(jù),今天我們要大家學(xué)習(xí)的課程是:使用ajax修改數(shù)據(jù)庫(kù)數(shù)據(jù),并在客戶網(wǎng)頁(yè)立即顯示新的內(nèi)容.當(dāng)然在修改的過(guò)程中同樣不會(huì)有刷新網(wǎng)頁(yè)的情況發(fā)生!2010-10-10探討.get .post .ajax ztree 還有后臺(tái)servlet傳遞數(shù)據(jù)的相關(guān)知識(shí)
這篇文章主要介紹了探討.get .post .ajax ztree 還有后臺(tái)servlet傳遞數(shù)據(jù)的相關(guān)知識(shí),需要的朋友可以參考下2015-12-12一個(gè)AJAX自動(dòng)完成功能的js封裝源碼[支持中文]
一個(gè)AJAX自動(dòng)完成功能的js封裝源碼[支持中文]...2007-02-02ajax結(jié)合豆瓣搜索結(jié)果進(jìn)行分頁(yè)完整代碼
這篇文章主要為大家詳細(xì)介紹了ajax結(jié)合豆瓣搜索結(jié)果進(jìn)行分頁(yè)完整代碼,具有一定的參考價(jià)值,感興趣的朋友可以參考一下2016-10-10通達(dá)OA 使用Ajax和工作流插件實(shí)現(xiàn)根據(jù)人力資源系統(tǒng)數(shù)據(jù)增加OA賬號(hào)(圖文詳解)
這篇文章主要介紹了通達(dá)OA 使用Ajax和工作流插件實(shí)現(xiàn)根據(jù)人力資源系統(tǒng)數(shù)據(jù)增加OA賬號(hào)(圖文詳解),需要的朋友可以參考下2016-12-12