【发布时间】:2017-08-10 03:35:08
【问题描述】:
我正在创建一个购物车数据库,我想将已经“活动”了 48 小时的购物车转移到一个 inactive_carts 表中。
现在我有了这段代码,但问题是,它没有把它放在数据库中,我检查了所有$time 项目都进入了 if 命令
这是我的代码:
foreach ($times as $time) {
$username = $time['username'];
$user_id = $time['user_id'];
$cart_id = $time['cart_id'];
$cart_value = $time['cart_value'];
if ($timeAlive >= 12000) {
try {
$queryInctive = $con->prepare('
INSERT INTO inactive_carts(`cart_id` , `username` , `user_id` , `cart_value` , `date`)
VALUES(:cart_id , ":username" , :user_id , ":cart_value" , CURRENT_TIMESTAMP)');
$queryInctive->bindParam(":cart_id" , $cart_id , PDO::PARAM_INT);
$queryInctive->bindParam(":username" , $username);
$queryInctive->bindParam(":user_id" , $user_id , PDO::PARAM_INT);
$queryInctive->bindParam(":cart_value" ,$cart_value );
$queryInctive->execute();
} catch (Exception $e) {
echo "Error is: " . $e->getMessage();
}
}
}
我完全没有错误。好像一切都好
注意: cart_id 是一个 int , username 是一个 string , user_id 是一个 int , cart_value 是一个数组
【问题讨论】:
-
如何获得
$times变量?你确定你输入了if-block? PDO 是否设置为抛出异常? PHP 原生的错误记录呢?error_reporting(E_ALL); ini_set("display_errors", 1);