我的代碼是:在代碼中如何優化?
$text = '12-10-4-32-45-name-sara-x-y-86';
$array = explode('-',$text);
foreach($array as $value) {
$sql = mysql_query("SELECT * FROM `table` WHERE `pid`='$value' ORDER BY `id` LIMIT 3");
while($row = mysql_fetch_array($sql)) {
echo $row['title'];
echo '';
}
echo '';
}
此代碼工作滿,但如果在$文本中使用150的變量,服務器停機!
如何優化大多數變量的代碼?
THX
使用'IN'子句,也許? '$ sql = mysql_query(「SELECT * FROM table WHERE pid IN($ in)...'。(注意上面的代碼仍然**易受SQL注入攻擊**。此外,'mysql_ *'函數被棄用。您應該切換到MySQLi/PDO並使用預準備語句正確地轉義輸入。) –
瞭解MySQL IN子句 –
此問題可能會對您有所幫助: http://stackoverflow.com/questions/8270134/checking-value-in -an-array-inside-one-sql-query-with-where-clause – knut2