1
以下是我想要做的:更新任意數量的行,將幾個字段更改爲SAME值。從php更新多行Mysql
$var = "1 3 5 7 9";
$query = "UPDATE tablename SET seen_before = 1 WHERE id = SET ($var);"
我的問題是:什麼是確切的語法在Where子句,當我在一組看着,以及如何傳遞通過PHP變量的設置項。
感謝,
邁克爾
以下是我想要做的:更新任意數量的行,將幾個字段更改爲SAME值。從php更新多行Mysql
$var = "1 3 5 7 9";
$query = "UPDATE tablename SET seen_before = 1 WHERE id = SET ($var);"
我的問題是:什麼是確切的語法在Where子句,當我在一組看着,以及如何傳遞通過PHP變量的設置項。
感謝,
邁克爾
$ids = "1, 3, 5, 7, 9";
$query = "UPDATE tablename SET seen_before = 1 WHERE id IN ($ids)";
如果你的ID是動態的,他們可能是,使用這樣才能正確地逃離他們的SQL查詢:
// Assuming $ids it's coming from an untrusted source, like $_GET
$ids = array(1, 3, 5, 7, 9);
$ids = array_map('intval', $ids);
$ids = implode(', ', $ids);
$query = "UPDATE tablename SET seen_before = 1 WHERE id IN ($ids)";
@Ionut :您需要修正$ ids或$ var。 – hobodave 2009-07-29 16:04:50