0

PDO を介して MySQL と連携する PHP アプリケーションがあります。異なるレコードを持つテーブルがあり、重複するレコードを挿入しないようにする必要があります。しかし、既存のアイテムを確認したい場合、selectステートメントは真の値を返しません。これは私のコードです:

$sql = "SELECT COUNT(id) FROM tbl_product_category1 WHERE title = '?'";
$q = $db->prepare($sql);
$q->execute(array($title));
if ($q->fetchColumn() == 0)
{
    ...

私もこれをテストしました:

$sql = "SELECT id FROM tbl_product_category1 WHERE title = '?'";
$q = $db->prepare($sql);
$q->execute(array($title));
$rows = $q->rowCount();
if ($rows == 0)
{
    ...

想像してみてください$title=1。この値を持つ 4 つのレコードがあります。SELECTしかし、私は声明で何も見ることができません。ここで何が問題なのですか?

4

1 に答える 1

3

これを試してください: (タイトルの値を一重引用符で囲まないでください)

$sql = "SELECT COUNT(id) FROM tbl_product_category1 WHERE title = ? ";
于 2012-07-29T10:51:02.843 に答える