【问题标题】:mysqli_query doesn't insert data into tablemysqli_query 不向表中插入数据
【发布时间】:2018-10-20 15:16:57
【问题描述】:

有人能找到问题吗? 它没有给出任何错误,但新行没有出现在数据库中,我不知道问题出在哪里。

  if (isset( $_REQUEST['signupnbtn'] ) ) {
    $age = mysqli_real_escape_string($con,$_REQUEST['ageinput']);
    $discord = mysqli_real_escape_string($con,$_REQUEST['discordinput']);
    $email = mysqli_real_escape_string($con,$_REQUEST['emailinput']);
    $tmp = mysqli_real_escape_string($con,$_REQUEST['tmpinput']);
    $steam = mysqli_real_escape_string($con,$_REQUEST['steaminput']);
    $datum = date("d-m-Y");
    $errorcode = 0;

    $q = "INSERT INTO `admissions` (age, discord, email, tmp, steam, datum)
    VALUES ('$age', '$discord', '$email', '$tmp', '$steam', '$datum')";
    $query2 = "SELECT email FROM `admissions` WHERE email='$email'";
    $sql = mysqli_query($con,$query2);
    $countrows = mysqli_num_rows($sql);
    if($countrows >= 1){
      $errorcode = 1;
    }else {
      $result = mysqli_query($con,$q);
    }
      if ($result) {
        $errorcode = 4;
      }

  }

【问题讨论】:

  • $countrows 的输出是什么?mysqli_query($con,$q) 行是否被执行?如果是,$result 的输出是什么?你必须调试这个
  • 另外,age 列的类型是什么?您尝试将其视为字符串,但这对于名为 age 的列来说听起来很可疑。
  • 请多描述一下您的问题。它会插入一个空行吗?您确定您的输入名称中没有输入错误吗?
  • 年龄列是一个字符串
  • 它不会向数据库中插入任何内容。

标签: php mysql sql mysqli insert-into


【解决方案1】:
$q = "INSERT INTO admissions (age, discord, email, tmp, steam, datum) VALUES ('$age', '$discord', '$email', '$tmp', '$steam', '$datum')";

【讨论】:

    【解决方案2】:

    问题已解决,日期应为“Y-m-d”格式,而不是“d-m-Y”,如下所示:

    if (isset( $_REQUEST['signupnbtn'] ) ) {
        $age = mysqli_real_escape_string($con,$_REQUEST['ageinput']);
        $discord = mysqli_real_escape_string($con,$_REQUEST['discordinput']);
        $email = mysqli_real_escape_string($con,$_REQUEST['emailinput']);
        $tmp = mysqli_real_escape_string($con,$_REQUEST['tmpinput']);
        $steam = mysqli_real_escape_string($con,$_REQUEST['steaminput']);
        $datum = date("Y-m-d");
        $errorcode = 0;
        $q = "INSERT INTO `admissions` (age, discord, email, tmp, steam, datum)
        VALUES ('$age', '$discord', '$email', '$tmp', '$steam', '$datum')";
        $query2 = "SELECT email FROM `admissions` WHERE email='$email'";
        $sql = mysqli_query($con,$query2);
        $countrows = mysqli_num_rows($sql);
        if($countrows >= 1){
          $errorcode = 1;
        }else {
          $result = mysqli_query($con,$q);
        }
          if ($result) {
            $errorcode = 4;
          }
      }
    

    【讨论】:

      猜你喜欢
      • 2018-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-14
      • 1970-01-01
      • 1970-01-01
      • 2019-01-21
      相关资源
      最近更新 更多