【问题标题】:Filling date column with current date and time?用当前日期和时间填充日期列?
【发布时间】:2014-03-30 18:07:34
【问题描述】:

我有这段代码用于将新产品添加到我的数据库中,但它根本不起作用。

我希望通过代码自动插入该日期,而不是手动插入,因此我在我的 mysql 中使用了 now(),但现在我使用 PDO,我现在知道了,我该怎么做。这是我的代码:

<?php
require"../scripts/config.php";
if(isset($_POST['product_name'])){
  $product_name  = $_POST['product_name'];
  $product_category= $_POST['product_category'];
  $product_quality= $_POST['product_quality'];
  $product_size = $_POST['product_size'];
  $product_price = $_POST['product_price'];
  $product_description= $_POST['product_description'];

  $q = "INSERT INTO tuotteet (name, category, quality, size, price, description, date_add) 
        VALUES(:name, :category, :quality, :size, :price, :description, NOW())";
    require "../scripts/connect.php";
    $query = $connect->prepare($q);
    $result = $query->execute(array(

    ":name" => $product_name,
    ":category" => $product_category,
    ":quality" => $product_quality,
    ":size" => $product_size,
    ":price" => $product_price,
    ":description" => $product_description  
                  ));
}
?>

【问题讨论】:

  • 1.":date_add" =&gt; now() 不需要。 2.$categoru != $category
  • 一次问一个问题
  • @davidstrachan 更像,行不通
  • 现在只有一个问题。

标签: php pdo insert


【解决方案1】:

您在 SQL 中使用 NOW(),这是一个很好的方法,但您也尝试传入 SQL 中不存在的 :date_add 参数作为占位符。当你 execute() 时,不要在 :date_add 上绑定值。

您需要检查并处理有关数据库访问的错误。

而且您还缺少 if (isset($_post['product_name])) 的单引号,应该是 if (isset($_post['product_name']))

【讨论】:

    猜你喜欢
    • 2014-02-09
    • 2017-01-22
    • 1970-01-01
    • 1970-01-01
    • 2018-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多