数据插入有问题

时间:2016-10-28 13:41:44

标签: php mysql

美好的一天,我正在尝试使用php将数据插入到mysql表中它有点工作,但我无法在phpmyadmin中看到数据

   <?php
$con=mysqli_connect('localhost','root','');
if(!$con)
{
echo("not connected");
}
if(!mysqli_select_db($con,'exam'))
{
echo 'db not selected';
}
$header = $_POST['header'];
$date = $_POST['date'];
$categ = $_POST['categ'];
$moder = $_POST['moder'];
$posttxt = $_POST['posttxt'];
$theme = $_POST['theme'];
$author = $_POST['author'];
$sql = "INSERT INTO postex (header,date,categ,moder,posttxt,theme,author) VALUES ('$header','$date','$categ','$moder','$posttxt','$theme','$author')";
if
(empty($header) || empty($date) || empty($categ) || empty($moder) || empty($posttxt) || empty($theme) || empty($author))
{
  echo "<Br>feel the fields!!!";

}
else{
echo("<br>added,wait for redirect");
}
?>

2 个答案:

答案 0 :(得分:3)

好的,在使用mysql_之前出现错误答案之前,mysqli_query($con, $sql)没有用来执行查询。

并注意那些你自己开放的sql注入,如果/当你开始使用它时。

准备好的陈述

同时确保POST数组确实包含值(并且表单使用带有匹配命名输入的POST方法)并且没有任何字符通过,MySQL可以抱怨,例如:撇号。

在任何方面逃避数据进入。

通过PHP和查询检查错误:

诺塔:

首先应检查是否有任何字段为空,然后执行查询。

即。和伪条件:

if(none empty and good to go){

    // execute the query
}

else{
// do something else
}

另外,如果您在同一个文件中使用整个代码,作为表单和php / mysql,那么您应该首先检查是否有任何POST数组设置/不为空。这会产生一些错误并给你带来不良后果。

答案 1 :(得分:0)

                      <?php
              function db(){
              $servername = "servername";
              $username = "username";
              $password = "password";
              $database = "database";

              // Create connection
              $conn = new mysqli($servername, $username, $password,$database);
              $conn->query("SET CHARACTER SET utf8"); 
              // Check connection
              if ($conn->connect_error) {
                  die("Connection failed: " . $conn->connect_error);
                  return false;
              }else{
                return $conn;
              } 
            }

    $data=db();

        $insert="INSERT INTO movies (bla1, bla2, bla3) VALUES (blavalue1, blavalue2, blavalue3)";


        $dotaz=mysqli_query($data,$insert);

if($dotaz){
echo "OK";
}else{
echo "Wrong";
}
                ?>