php - 添加功能不适用于数据库

标签 php mysql database function addition

大家好,我这学期正在学习 php + html,我被这段代码困住了。 一切正常(列表+从数据库中删除),但由于某种原因添加不会添加到数据库,即使它确实验证了输入并使用 header 函数在 URL 末尾给出了代码号。是的,我确实包含了 addProduct 功能的页面:)

如果有人可以给我建议或提示,这里是代码

PHP 代码:

if ( $action == 'add_product' ) {
  $code = $_POST['code'];
  $name = $_POST['name'];
  $version = $_POST['version'];
  $releaseDate = $_POST['releaseDate'];

  if (empty($code) || empty($name)  || empty($version) || empty($releaseDate)) {
    $error = "Please enter a valid and correct values.";
    include('../errors/error.php');
    exit();
  } else {
    addProduct($code, $name, $version, $releaseDate);
    header("Location: .?code=$code");
  }
}

这是 addProduct 函数

function addProduct($code, $name, $version, $releaseDate){
  global $db;

  $query = "INSERT INTO products
              (productCode, name, version, releaseDate)
            VALUES
              ('$code', '$name', '$version' '$releaseDate')";
  $db->exec($query);
}

这是 HTML 代码

<form action="index.php" method="post">
    <input type="hidden" name="action" value="add_product"/>
    <label>Code:</label> <input type="input" name="code"/>
    <br />
    <label>Name:</label><input type="input" name="name"/>
    <br />
    <label>Version:</label><input type="input" name="version"/>
    <br />
    <label>Release Date:</label><input type="input" name="releaseDate"/> <label>Use 'yyyy-mm-dd' format</label>
    <br />
    <label>&nbsp;</label>
    <input type="submit" name="submit" value="Add Product" />
    <br />  <br />
</form>

谢谢:)

最佳答案

是我一个人的问题还是您在函数中缺少逗号?

VALUES ('$code', '$name', '$version' '$releaseDate')";

关于php - 添加功能不适用于数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15608358/

相关文章:

php - 如果或倍数

mysql - 将数据从本地 MySQL master 逐步复制到 Google Cloud SQL Slave

php - 从 Materialise Form 添加到 MySQL

php - 通过 PHP 运行两个 linux 命令,在执行第二个之前不要等待第一个结束

php - MariaDB 服务器版本,可在附近使用正确的语法

php - 尝试通过使用 foreach 循环使用 MYSQL 选择一行数据

java - 首次运行 API 26 时未加载数据库

mysql - 使用具有 IF 和 IFNULL 的别名列的 Where 子句

android - 关于未在 android sqlite 中调用的升级方法

performance - 用于快速读取和快速写入的高性能数据库。没有更新或删除