php mysql 表单_php表单怎么提交到数据库?(详解)

提交数据到服务器端数据库都是用的form表单,这是最普通最简单提交数据的方法,填写完表单后,post提交到后台.php文件,处理完后返回到指定页面,最后,页面就重新刷新了一遍,显示预想的页面。 下面本篇文章就来通过示例来给大家详解一下php表单提交到数据库。

48dca6c16b21af3b18ed5d1498cc8b60.png

一般朋友们逛一些网站的时候,想使用网站或者看到更多网站里的内容,网站会要求用户进行新用户的注册,网站会把新用户的注册信息存入数据库中,需要的时候再进行提取。

这样网站就会首先创建自己的数据库和对应的表,我们这里使用php创建一个简单的数据库和表,使用phpMyAdmin来创建MySql数据库和表。例如创建一个test数据库,其示例的代码如下所示:<?php

// 创建连接

$conn = new mysqli("localhost", "uesename", "password");

// 检测连接

if ($conn->connect_error)

{

die("连接失败: " . $conn->connect_error);}

// 创建数据库

$sql = "CREATE DATABASE test";

if ($conn->query($sql) === TRUE)

{

echo "数据库创建成功";

} else {

echo "Error creating database: " . $conn->error;

}

$conn->close();

?>

然后使用CREATE TABLE 语句用于创建 MySQL 表,设置如下几个字段。

id : 它是唯一的,类型为 int ,并选择主键。

uesrname : 用户名,类型为 varchar, 长度为30。

password : 密码,类型为 varchar, 长度为30。

confirm:确认密码,类型为 varchar, 长度为30。

email : 邮箱,类型为 varchar, 长度为30。

接着使用sql语句来创建数据库表,其代码显示如下:<?php

// 创建连接

$conn = new mysqli("localhost", "uesename", "password","test");

// 检测连接

if ($conn->connect_error)

{

die("连接失败: " . $conn->connect_error);

}

// 使用 sql 创建数据表

$sql = "CREATE TABLE login (

id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

username VARCHAR(30) NOT NULL,

password VARCHAR(30) NOT NULL,

confirm VARCHAR(30) NOT NULL,

email VARCHAR(30) NOT NULL,

)ENGINE=InnoDB DEFAULT CHARSET=utf8 ";

if ($conn->query($sql) === TRUE)

{

echo "Table MyGuests created successfully";

} else {

echo "创建数据表错误: " . $conn->error;

}

$conn->close();

?>

上面我们创建好了数据库和表,下面建立一个简单的表单注册的前端页面,这里的表单页面很简单,用户名,密码,密码确认,注册邮箱等等几个简单的文本框。其代码如下:

用户注册页面

*{margin:0px;padding:0px;}

ul{

width:400px;

list-style:none;

margin:50px auto;

}

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:5px 10px;

}

  • 用户名:

  • 密 码:

  • 确认密码:

  • 邮 箱:

接下来就需要使用php代码来实现新用户提交的信息给提交到数据库,使用POST方式进行值的传递和获取。

首先需要连接前面创建完成的数据库和表,因为新用户注册的用户名,密码等信息需要保存到表中的对应字段里面。存入数据库表之前先对提交的数据进行一些判断验证,比如不符合要求的用户名,邮箱等需要有过滤和错误的提示,还要防止用户名如果被其他用户注册,则需要提示您将不能再使用这个用户名,这是先读取数据库已经存在的用户名,然后进行判断。

简单来说就是将表单提交的数据都存入变量,然后进行密码和验证码的判断,都正确以后,将用户信息存入数据库并将数据库存放用户信息的表中所有数据提取打印出来。

说白了,后半句就是数据存入和提取。其具体的代码如下所示:<?php

session_start();

header("Content-type:text/html;charset=utf-8");

$link = mysqli_connect('localhost','root','root','test');

if (!$link) {

die("连接失败:".mysqli_connect_error());

}

$username = $_POST['username'];

$password = $_POST['password'];

$confirm = $_POST['confirm'];

$email = $_POST['email'];

if($username == "" || $password == "" || $confirm == "" || $email == "")

{

echo "";

} 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 * from login where username = '$username'"))){

echo "";

} else{

$sql= "insert into login(username, password, confirm, email)values('$username','$password','$confirm','$email')";

//插入数据库

if(!(mysqli_query($link,$sql))){

echo "";

}else{

echo "";

}

}

?>

朋友们可以自己动手进行各种操作和尝试,熟练以后就会对表单操作,数据库的操作有一定深入的理解,为以后的开发打下良好的基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值