php如何把表单内容提交到数据库
一般朋友们逛一些网站的时候,想使用网站或者看到更多网站里的内容,网站会要求用户进行新用户的注册,网站会把新用户的注册信息存入数据库中,需要的时候再进行提取。
这样网站就会首先创建自己的数据库和对应的表,我们这里使用php创建一个简单的数据库和表,使用phpMyAdmin来创建MySql数据库和表。例如创建一个test数据库,其示例的代码如下所示:
connect_error) { die("连接失败:".$conn->connect_error);} //创建数据库 $sql="CREATEDATABASEtest"; if($conn->query($sql)===TRUE) { echo"数据库创建成功"; }else{ echo"Errorcreatingdatabase:".$conn->error; } $conn->close(); ?>
然后使用CREATETABLE语句用于创建MySQL表,设置如下几个字段。
- id:它是唯一的,类型为int,并选择主键。
- uesrname:用户名,类型为varchar,长度为30。
- password:密码,类型为varchar,长度为30。
- confirm:确认密码,类型为varchar,长度为30。
- email:邮箱,类型为varchar,长度为30。
接着使用sql语句来创建数据库表,其代码显示如下:
connect_error) { die("连接失败:".$conn->connect_error); } //使用sql创建数据表 $sql="CREATETABLElogin( idINT(10)UNSIGNEDAUTO_INCREMENTPRIMARYKEY, usernameVARCHAR(30)NOTNULL, passwordVARCHAR(30)NOTNULL, confirmVARCHAR(30)NOTNULL, emailVARCHAR(30)NOTNULL, )ENGINE=InnoDBDEFAULTCHARSET=utf8"; if($conn->query($sql)===TRUE) { echo"TableMyGuestscreatedsuccessfully"; }else{ echo"创建数据表错误:".$conn->error; } $conn->close(); ?>
上面我们创建好了数据库和表,下面建立一个简单的表单注册的前端页面,这里的表单页面很简单,用户名,密码,密码确认,注册邮箱等等几个简单的文本框。其代码如下:
用户注册页面 *{margin:0px;padding:0px;} ul{ width:400px; list-style:none; margin:50pxauto; } li{ padding:12px; position:relative; } label{ width:80px; display:inline-block; float:left; line-height:30px; } input[type='text'],input[type='password']{ height:30px; } img{ margin-left:10px; } input[type="submit"]{ margin-left:80px; padding:5px10px; }
接下来就需要使用php代码来实现新用户提交的信息给提交到数据库,使用POST方式进行值的传递和获取。
首先需要连接前面创建完成的数据库和表,因为新用户注册的用户名,密码等信息需要保存到表中的对应字段里面。存入数据库表之前先对提交的数据进行一些判断验证,比如不符合要求的用户名,邮箱等需要有过滤和错误的提示,还要防止用户名如果被其他用户注册,则需要提示您将不能再使用这个用户名,这是先读取数据库已经存在的用户名,然后进行判断。
简单来说就是将表单提交的数据都存入变量,然后进行密码和验证码的判断,都正确以后,将用户信息存入数据库并将数据库存放用户信息的表中所有数据提取打印出来。说白了,后半句就是数据存入和提取。其具体的代码如下所示:
alert('信息不能为空!重新填写');window.location.href='zhuce.html'"; }elseif((strlen($username)<3)||(!preg_match('/^\w+$/i',$username))){ echo""; //判断用户名长度 }elseif(strlen($password)<5){ echo""; //判断密码长度 }elseif($password!=$confirm){ echo""; //检测两次输入密码是否相同 }elseif(!preg_match('/^[\w\.]+@\w+\.\w+$/i',$email)){ echo""; //判断邮箱格式是否合法 }elseif(mysqli_fetch_array(mysqli_query($link,"select*fromloginwhereusername='$username'"))){ echo""; }else{ $sql="insertintologin(username,password,confirm,email)values('$username','$password','$confirm','$email')"; //插入数据库 if(!(mysqli_query($link,$sql))){ echo""; }else{ echo""; } } ?>
朋友们可以自己动手进行各种操作和尝试,熟练以后就会对表单操作,数据库的操作有一定深入的理解,为以后的开发打下良好的基础。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。