• 小白简单留言板(2)-将表单信息输入数据库


    创建数据库:

    1.本小白通过navicat创建数据库,创建数据库mydb,创建msg表用来储存信息,有id,user,content,time,其中id为主键自动递增,设置好字符集,排序规则。

    网页数据传入数据库

    1. 连接数据库
    2. $user = $_POST[‘user’];$content = $_POST[‘content’];//【】里的就是表格中的name属性
    3. 创建自己写的Input对象(构造函数为 public function __construct($user ,$content )),使用自己写的judge方法判断数据输入是否正确,能否插入数据库,在函数中应用都要用$this->   如$this->user == ‘’;//判断是否为空;
    4. $time = time();//time() 函数返回自 Unix 纪元(January 1 1970 00:00:00 GMT)起的当前时间的秒数,
    5. $sql = "insert msg(user,content,time) values('{$user}' ,'{$content}', '{$time}')";//将sql语句存起来。
    6. $db->query(“sql语句”);//用来在数据库中执行此sql语句(上面),返回true或者false,可用来判断信息是否入数据库成功
    7. 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 ?>
  • 相关阅读:
    终于回来了&&邮递员送信
    发射站
    黑匣子
    利维坦——(1)
    预告
    整除(水题)
    BZOJ054_移动玩具_KEY
    BZOJ4034_树上操作_KEY
    树链剖分学习&BZOJ1036
    BZOJ1208_宠物收养所_KEY
  • 原文地址:https://www.cnblogs.com/first-bloodlalala/p/11697893.html
Copyright © 2020-2023  润新知