這個是最簡單的表單提交 延伸:后面有很多需要提交的信息 如何快速部署接口
此例子是移動端H5頁面,使用的是zepto.min.js
HTML
<input class="name" type="text" placeholder="請輸入您的姓名" id="name"> <input class="tel" type="text" placeholder="請輸入您的手機號碼" id="tel"> <span class="button_tijiao" id="form_tijiao"><img src="images/page8/button.png"></span>
前端頁面JS 不跨域的情況下
<script type="text/javascript"> $('#form_tijiao').click(function () { var name =$('#name').val(),tel=$('#tel').val(); if(name=='' && tel ==''){ alert("請檢查是否輸入姓名和電話!!!") } $.ajax({ type:'post', url:'http://www.netnic.com.cn/formapi/form_qishangh5.php', data:{name:name,tel:tel}, success:function (data, status, xhr) { alert('提交成功!請等候工作人員聯系!') }, error:function (xhr, errorType, error) { } }) }) </script>
后端PHP頁面 注意不要跨域
1.這里接收前端數據 $_POST[name],$_POST[tel],post傳送過來,這里需要過濾數據是否正常
需要:
①過濾數據 | √ | ②數據唯一性檢測(手機號唯一) | √ | ③php生成當前寫入時間(時間戳格式) | √ | ④如何返回結果給前端(返回字符串或者是json數據) | √ | ⑤手機號格式驗證(正則匹配驗證) | √ |
⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳
2.鏈接數據庫
1)mysql_connect('localhost','數據庫用戶名','數據庫密碼'),連接數據庫
2)選擇數據庫 mysql_select_db('數據庫名稱',數據庫鏈接上一步)
3)數據庫時區設置 測試環境php5.2.6 ,在頭部添加 ini_set('date.timezone','Asia/Shanghai'); 測試可行;網上說的 date_default_timezone_set('PRC');並沒有效果;不知道哪里有問題;
參考資料:
date_default_timezone_set()設置時區
<?php ini_set('date.timezone','Asia/Shanghai'); $con = mysql_connect("localhost","admin","qishangxiangyunnetnic20160407"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("qishang_form", $con); $time = date('Y-m-d H:i:s',time()); $sql="INSERT INTO netnich5 (name, tel_number,posttime) VALUES ('$_POST[name]','$_POST[tel]','$time')"; if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } echo "1 record added"; ?>
1.問題:Notice: Use of undefined constant callback - assumed 'callback'
解決:
在每個文件頭上加 error_reporting(0); 參考資料:http://www.php230.com/1410834481.html
sql語句清理表數據
1.全部清理表中數據,不刪除表 TRUNCATE TABLE 表名
跨域jsonp解決方案