PHP INSERT INTO MySQL 不起作用?

标签 php mysql oop

当我尝试将任何内容插入数据库时​​,它不会显示任何错误,但数据不在数据库中。我检查了表名称和结构,这就是它的变化...

SELECT 是一次尝试,除了上面的 INSERT INTO 之外,它工作正常,但为什么呢?

<?php
    error_reporting(0);
    require "../database/MySQL.php";

    $sql = "INSERT INTO zb_employees (name, option, image_path, email) VALUES ('1', '2', '3', '4')";
    $db->query($sql);
    echo $db->affected_rows;

    echo '<br>';

    $sql = "SELECT * FROM zb_employees";
    $result = $db->query($sql);

    if ( $result->num_rows > 0 ) {
      while($row = $result->fetch_assoc()) {
        $row["name"];
      }
    } else {
      echo "0 Employees found!";
    }

    $db->close();

最佳答案

option是MYSQL中的保留字。因此,您需要加上反引号才能使其可接受

了解更多 on reserved words in MYSQL

<?php
    //turn this on when in development.
            error_reporting(-1);



     $sql = "INSERT INTO zb_employees (`name`, `option`, `image_path`, `email`) VALUES ('1', '2', '3', '4')";
            $db->query($sql);
            echo $db->affected_rows;

还可以考虑使用准备好的语句。有助于防止 SQL 注入(inject)

关于PHP INSERT INTO MySQL 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43072094/

相关文章:

mysql - 如何使用 mysql 选择除特定 id 之外的所有内容?

mysql - 如何在MySQL中使用正则表达式用随机数更新和替换字符串?

PHP - 如何检查是否从包含 () 的文件中调用了 return()?

php - 如何在 ZF2 中结合 lower 和 like?

javascript - document.title 函数无法设置它与 php 一起使用

c++ - 在 C++ 中管理成员函数执行

php - 多个数据库连接 PHP

php - 在 LiteSpeed 上使用 .htaccess 的 mod_proxy

mysql - 组织 MySQL 数据库信息的实用方法?

oop - Chapel 中是否有与 Fortran 的 select 类型语句等效的语句?