我知道这些值是正确的,因为我对它们进行了测试,我知道查询在控制台中有效 - 但我正在拔头发,试图看看它是如何不起作用的。我没有收到任何错误,但var_dump($row)
=== 错误。
你能看出我哪里错了吗?
<?php
include('config.php');
//include('classes/db.class.php');
session_start();
var_dump($_SESSION['cart_id']);
$db = new PDO('mysql:host=' . DB_HOST .';dbname=' . DB_NAME, DB_USER, DB_PASS);
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
if(isset($_POST['add2cart']))
{
if(!isset($_SESSION['cart_id']))
$_SESSION['cart_id'] = md5(my stuff here);
try{
$stmt = $db->prepare("
SELECT *
FROM cart
WHERE cart_id = ':cartid'
AND sku = ':sku'
");
$stmt->bindParam(':cartid', $_SESSION['cart_id'], PDO::PARAM_STR);
$stmt->bindParam(':sku', $_POST['sku'], PDO::PARAM_STR);
$stmt->execute();
//print_r($stmt);
$row = $stmt->fetch();
var_dump($row);
} catch(PDOException $e)
{
die($e->getMessage());
}
}
?>