如何用php+mysql做一个表单提交
发布时间:2017-08-12 23:03:36作者:魏义齐阅读:()评论:
php+mysql应用还是非常广泛的,常见的百度竞价单页面里的表单提交就是用PHP+MySQL做的!以我做过的的项目http://works.weiyiqi.net/jinqi/list_tjckd.php为例来讲解怎么做。
首先介绍一下需要的几个文件:datecenter.php(用来从数据库读取已经提交的信息);postdate.php(用来接收从表单传递来的值并写入数据表和判断是否提交成功);list_tjckd.php(有表单的页面)。
第一步:建立表单。这里我一般用Dreamweaver插入表单和表格,因为方便。下面是我的表单:
- <form action="postdate.php" method="post" name="form">
- <table width="100%" border="0" cellspacing="0" cellpadding="0">
- <tr>
- <td colspan="2" class="bar">欠款信息</td>
- </tr>
- <tr>
- <td class="left">欠 款 种 类:</td>
- <td class="right"><select name="qkzl" id="qkzl">
- <option>---请选择欠款种类---</option>
- <option>拖欠物业费</option>
- <option>银行贷款逾期</option>
- <option>互联网平台贷款逾期</option>
- <option>民间借贷逾期</option>
- </select></td>
- </tr>
- <tr>
- <td class="left">欠 款 原 因:</td>
- <td class="right"><textarea name="qkreason" id="qkreason" placeholder="请详细描述欠款原因,200字以内"></textarea></td>
- </tr>
- <tr>
- <td class="left">债 权 金 额:</td>
- <td class="right"><input type="text" name="money" id="money" placeholder="请输入债权金额(单位是元)"></td>
- </tr>
- <tr>
- <td colspan="2" class="bar">债权人信息</td>
- </tr>
- <tr>
- <td class="left">身 份:</td>
- <td class="right"><p>
- <label>
- <input type="radio" name="identity" value="个人" id="RadioGroup1_0">
- 个人</label>
- <label>
- <input type="radio" name="identity" value="企业" id="RadioGroup1_1">
- 企业</label>
- </p></td>
- </tr>
- <tr>
- <td class="left">债权人名称:</td>
- <td class="right"><input type="text" name="name" id="name" placeholder="个人请输入姓名,企业请输入公司名称"></td>
- </tr>
- <tr>
- <td class="left">身 份 证 号:</td>
- <td class="right"><input type="text" name="card" id="card" placeholder="请输入身份证号码"></td>
- </tr>
- <tr>
- <td class="left">手 机 号:</td>
- <td class="right"><input type="tel" name="sjhm" id="sjhm" placeholder="请输入手机号码"></td>
- </tr>
- <tr>
- <td colspan="2" class="bar">被催收人信息</td>
- </tr>
- <tr>
- <td class="left">身 份:</td>
- <td class="right"><p>
- <label>
- <input type="radio" name="bidentity" value="个人" id="RadioGroup1_2">
- 个人</label>
- <label>
- <input type="radio" name="bidentity" value="企业" id="RadioGroup1_3">
- 企业</label>
- </p></td>
- </tr>
- <tr>
- <td class="left">名 称:</td>
- <td class="right"><input type="text" name="bname" id="bname" placeholder="个人请输入姓名,企业请输入公司名称"></td>
- </tr>
- <tr>
- <td class="left">身 份 证 号:</td>
- <td class="right"><input type="text" name="bcard" id="bcard" placeholder="请输入身份证号码(如果不知道可不填写)"></td>
- </tr>
- <tr>
- <td class="left">手 机 号:</td>
- <td class="right"><input type="tel" name="bsjhm" id="bsjhm" placeholder="请输入手机号码"></td>
- </tr>
- <tr>
- <td class="left">担 保:</td>
- <td class="right"><p>
- <label>
- <input type="radio" name="danbao" value="有保证人" id="RadioGroup1_4">
- 有保证人</label>
- <label>
- <input type="radio" name="danbao" value="有保证物" id="RadioGroup1_5">
- 有保证物</label>
- </p></td>
- </tr>
- <tr>
- <td colspan="2"><input type="button" name="determine" id="determine" value="确认提交" onClick="checktotal()">
- </td>
- </tr>
- </table>
- </form>
第二步:写前端的js验证(也就是list_tjckd.php页面),下面是我的js代码。
<script>
<!--
欠款种类验证-->
function checkkind() {
var kinds = document.form.qkzl.value;
if (kinds == "---请选择欠款种类---") {
alert("您还未选择欠款种类!");
return false;
} else {
return true;
}
}
<!--欠款原因验证-->
function checkreason() {
var reasons = document.form.qkreason.value;
var reg = /^[\u4e00-\u9fa5]*$/;
if (reasons.length >= 10 && reasons.length <= 200) {
if (reg.test(reasons) == false) {
alert("您只能用汉字进行描述");
return false;
} else {
return true;
}
} else {
alert("请输入10~200个汉字进行描述!");
return false;
}
}
<!--欠债金额验证-->
function checkje() {
var ed = document.form.money.value;
var reg = /^\+?[1-9][0-9]*$/;
if (ed.length > 0) {
if (reg.test(ed) == false) {
alert("请输入一个非零正整数!");
return false;
} else {
return true;
}
} else {
alert("请输入债权金额!");
return false;
}
}
<!--债权人身份验证-->
function checkzq() {
var zqiden = document.form.identity.value;
if (zqiden == "个人" || zqiden == "企业") {
return true;
} else {
alert("您还未选择债权人的身份!");
return false;
}
}
<!--债权人的名称验证-->
function checkzqname() {
var zqname = document.form.name.value;
var reg = /^[\u4e00-\u9fa5]*$/;
if (zqname.length >= 2 && zqname.length <= 20) {
if (reg.test(zqname) == false) {
alert("债权人名称只能为汉字!");
return false;
} else {
return true;
}
} else {
alert("债权人名称不能为空,且不得超过20个汉字!");
return false;
}
}
<!--债权人身份证号码验证-->
function checkzqsfzhm() {
var zqcard = document.form.card.value;
var reg = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
if (zqcard.length > 0) {
if (reg.test(zqcard) == false) {
alert("您输入的身份证号不正确,请重新输入!");
return false;
} else {
return true;
}
} else {
alert("债权人身份证号不能为空!");
return false;
}
}
<!--债权人手机号验证-->
function checkzqsjh() {
var zqsjh = document.form.sjhm.value;
var reg = /^1(3|4|5|7|8)\d{9}$/;
if (reg.test(zqsjh) == false) {
alert("请输入正确的11位债权人手机号码!");
return false;
} else {
return true;
}
}
<!--被催收人身份验证-->
function checkcssf() {
var cssf = document.form.bidentity.value;
if (cssf == "个人" || cssf == "企业") {
return true;
} else {
alert("请选择被催收人的身份");
return false;
}
}
<!--被催收人名称验证-->
function checkbcsname() {
var bcsname = document.form.bname.value;
var reg = /^[\u4e00-\u9fa5]*$/;
if (bcsname.length >= 2 && bcsname.length <= 20) {
if (reg.test(bcsname) == false) {
alert("被催收人名称只能为汉字!");
return false;
} else {
return true;
}
} else {
alert("被催收人名称不能为空,且不超过20个汉字");
return false;
}
}
<!--被催收人身份证号码验证-->
function checkbcsiden() {
var bcsiden = document.form.bcard.value;
var reg = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
if (reg.test(bcsiden) == false) {
alert("请输入正确的被催收人身份证号码(不影响表单内容的提交)");
return false;
} else {
return true;
}
}
<!--被催收人手机号码验证-->
function checkbcswsjhm() {
var bcswsjhm = document.form.bsjhm.value;
var reg = /^1(3|4|5|7|8)\d{9}$/;
if (reg.test(bcswsjhm) == false) {
alert("请输入正确的被催收人手机号码!");
return false;
} else {
return true;
}
}
<!--保证类型验证-->
function checktype() {
var type = document.form.danbao.value;
if (type == "有保证人" || type == "有保证物") {
return true;
} else {
alert("请选择是否有保证物或保证人!");
return false;
}
}
<!--总验证-->
function checktotal() {
if (checkkind() && checkreason() && checkje() && checkzq() && checkzqname() && checkzqsfzhm() && checkzqsjh() && checkcssf() && checkbcsname() && checkbcswsjhm() && checktype()) {
document.form.submit();
}
else {
window.location.href = "#form";
}
}
</script>
本人不擅长js,所以写了一大堆,但这些足以解决表单验证问题。在这里要注意三点,总验证、表单提交的跳转和最后确认提交的onclick事件。确认提交的类型一定是button而不是submit,id和name的起名也不能是submit。不要问为什么,这都是经验。
if else语句是最符合常人逻辑的语句,把这个语句搞明白一般写js表单验证都不是问题。
第三步:把数据从数据库读取出来展现在一张表上(也就是datecenter.php)。因为代码太多,所以请大家下本页面,下载链接:https://pan.baidu.com/s/1i5Dt5hr 提取密码:30ky。
.sql文件就不给大家提供了,感兴趣的话可根据代码建数据库和数据表,建数据表一定要注意主键和自动增长列。
相关阅读
-
无相关信息
上一篇:Dreamweaver如何使php文件在本地服务器运行下一篇:如何在码云上传项目
原创不易,您的赞助就是博主更新的动力!
赞助请备注,8.88元及以上可在赞助光荣榜留下外链信息。
完全自托管的评论系统
-
东方星雨
-
deanhan
-
1264822519
-
aini3311
-
a1051020101
-
weiyiqi
- 详解rss订阅(如何在网站添加rss订阅功能和如何订阅自己喜欢的网站)(4254)
- 如何把Excel数据导入phpmyadmin里的数据库(1563)
- phpcms套用模板做网站教程三:模板的套用步骤(1480)
- 利用hbuilder打包APP的步骤(1268)
- phpstudy使用教程(987)
- phpcms套用模板做网站教程一:本地服务器的安装与调试(982)
- win2008服务器如何部署ssl(954)
- 没有人看不懂的ps批量处理图片教程(824)
- Dreamweaver如何使php文件在本地服务器运行(746)
- phpcms套用模板做网站教程四:网站的上传(704)
- hashover2.0最新使用教程,解决诸多问题,完美呈现评论(2021-07-01)
- 如何在码云上传项目(2019-07-09)
- phpstudy使用教程(2018-12-18)
- 详解rss订阅(如何在网站添加rss订阅功能和如何订阅自己喜欢的网站)(2018-11-04)
- phpcms网站搬家详细教程以及部分意外情况的处理方法(2018-09-12)