如何解决与mariaBD相对应的sql语法错误,以进行插入查询?

时间:2019-02-01 08:30:36

标签: php mysql

我想使用php and mysql将表单详细信息插入数据库。

我按照w3school编写了正确的syntax,但出现以下错误:

  

“您的SQL语法有误;请查看与您的MariaDB服务器版本相对应的手册,以获取正确的语法,以在'-table(名称,电子邮件ID,消息)VALUES('sneha' ,'mansi.patole21 @ gmail.com','hi')'位于第1行“

什么是正确的语法?以及为什么显示MariaDB

我的代码:

      <?php
      $servername = "localhost";
      $username = "root";
      $password = "";

      $con = mysqli_connect($servername,$username,$password);

      if(!$con) {
      die("Connection failed:" . mysqli_connect_error());
      }
      echo "Connection Successful!\n\n";

      if(!mysqli_select_db($con,'contactdb')){
      echo "Database not selected";
      }
      else {
      echo "Database connect Successfully!";
      }

      $name = $_POST['name'];
      $email = $_POST['email'];
      $message = $_POST['message'];

      $sql = "INSERT INTO visitor-table (Name,Email Id,Message) VALUES 
       ('$name','$email','$message')";

      if(mysqli_query($con,$sql)){
      echo "Data is inserted Successfully!";
        header("refresh:2, url = index.html");
       }
      else{
      echo "Data not inserted!". $sql."<br>". mysqli_error($con);
      }

      mysqli_close($con);
      ?>

2 个答案:

答案 0 :(得分:0)

-是问题所在,请将表名放在反引号(``)内,否则最好将visitor-table的名称更改为visitor_table之类的东西。

答案 1 :(得分:0)

尝试一下:

$ sql =“ INSERT INTO visitor_table(Name,Email_Id,Message)VALUES        ('$ name','$ email','$ message')“;

我认为您必须将表名称visitor-table更改为visitor_table和col。电子邮件ID到Email_Id