源码论坛公告:本站是一个交流学习建站资源的社区论坛,旨在交流学习源码脚本等资源技术,欢迎大家投稿发言! 【点击此处将锦尚放在桌面

源码论坛,商业源码下载,尽在锦尚中国商业源码论坛

 找回密码
 会员注册

QQ登录

只需一步,快速开始

查看: 7936|回复: 0
打印 上一主题 下一主题

[PHP编程] php mysql 表单_php表单怎么提交到数据库?(详解)

[复制链接]

1169

主题

1557

帖子

8820

金币

超级版主

Rank: 8Rank: 8

积分
19326
跳转到指定楼层
1#
发表于 2022-5-31 21:38:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提交数据到服务器端数据库都是用的form表单,这是最普通最简单提交数据的方法,填写完表单后,post提交到后台.php文件,处理完后返回到指定页面,最后,页面就重新刷新了一遍,显示预想的页面。 下面本篇文章锦尚中国源码论坛的小编就来通过示例来给大家详解一下php表单提交到数据库。

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

这样网站就会首先创建自己的数据库和对应的表,我们这里使用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 "";

}

}

?>

朋友们可以自己动手进行各种操作和尝试,熟练以后就会对表单操作,数据库的操作有一定深入的理解,为以后的开发打下良好的基础。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

锦尚中国源码论坛

聚合标签|锦尚中国,为中国网站设计添动力 ( 鲁ICP备09033200号 ) |网站地图

GMT+8, 2024-4-25 07:47 , Processed in 0.031561 second(s), 16 queries .

带宽由 锦尚数据 提供 专业的数据中心

© 锦尚中国源码论坛 52jscn Inc. 非法入侵必将受到法律制裁 法律顾问:IT法律网 & 褚福省律师 锦尚爱心 版权申诉 版权与免责声明