小白简单留言板-将表单信息输入数据库
Posted first-bloodlalala
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小白简单留言板-将表单信息输入数据库相关的知识,希望对你有一定的参考价值。
创建数据库:
1.本小白通过navicat创建数据库,创建数据库mydb,创建msg表用来储存信息,有id,user,content,time,其中id为主键自动递增,设置好字符集,排序规则。
网页数据传入数据库
- 连接数据库
- $user = $_POST[‘user’];$content = $_POST[‘content’];//【】里的就是表格中的name属性
- 创建自己写的Input对象(构造函数为 public function __construct($user ,$content )),使用自己写的judge方法判断数据输入是否正确,能否插入数据库,在函数中应用都要用$this-> 如$this->user == ‘’;//判断是否为空;
- $time = time();//time() 函数返回自 Unix 纪元(January 1 1970 00:00:00 GMT)起的当前时间的秒数,
- $sql = "insert msg(user,content,time) values(‘{$user}‘ ,‘{$content}‘, ‘{$time}‘)";//将sql语句存起来。
- $db->query(“sql语句”);//用来在数据库中执行此sql语句(上面),返回true或者false,可用来判断信息是否入数据库成功
- header(“location:gbook.php”); //立刻返回原网页并刷新
1 <?php //用来判断数据是否合法的类 2 class Input{ 3 public $user;public $content; 4 public function __construct($user, $content){//构造函数 5 $this->user = $user; 6 $this->content = $content; 7 echo "<br/>数据初始化成功,即将写入数据。。。。。。。。<br/>"; 8 } 9 public function judge(){ 10 $forbid = [‘你妈妈‘, ‘你爸爸‘, ‘你个傻逼东西‘];//禁止的用户名 11 foreach($forbid as $user0){//遍历forbid,把$forbid中每个数据分别放入user0 12 if($user0 == $this->user or $this->user==‘‘){//进行判断数据是否合法 13 die("用户名错误");//die能直接结束并输出,不执行下面的语句 14 } 15 } 16 if($this->content == ‘‘) 17 die("内容不能为空"); 18 echo "成功获取<br/>用户名:{$this->user}<br/>内容:{$this->content}<br/>"; 19 } 20 } 21 ?>
1 <?php 2 //1.连接数据库,也可写入connect.php文件,直接用include(‘connect.php‘)调用 3 $host = "127.0.0.1"; 4 $user = "root"; 5 $pwd = "root"; 6 $dbname = "mydb"; 7 $db = new mysqli($host, $user, $pwd, $dbname); 8 //var_dump($db); 9 if($db->connect_errno != 0){//判断数据库是否连接成功 10 echo $db->connect_errno; 11 die("数据库连接失败"); 12 } 13 //else echo"成功"; 14 $db->query("SET NAMES UTF8");//设置数据库传输数据的编码,不然乱码 15 //2.连接成功,开始接受数据 16 include("Input.php");//导入对象Input,用来判断输入的数据是否合理 17 $user = $_POST[‘user‘]; 18 $content = $_POST[‘content‘]; 19 echo "接收数据成功:<br/>用户: $user <br />内容: $content "; 20 $input = new Input($user, $content); 21 $input->judge();//判断数据是否合法 22 $time = time(); 23 $sql = "insert msg(user,content,time) values(‘{$user}‘ ,‘{$content}‘, ‘{$time}‘)";//储存sql语句 24 //echo $sql; 25 $judge = $db->query($sql);//执行sql语句 26 if($judge === false){echo "sql错误";} 27 else echo "已经成功插入"; 28 header("location:gbook.php");//返回原网页并刷新,把它注析可看到过程。 29 ?>
以上是关于小白简单留言板-将表单信息输入数据库的主要内容,如果未能解决你的问题,请参考以下文章