我想要建立一個簡單的SQL語句的一部分:PHP剝離出字符串
// build sql statement
$sql = "select * from some_tbl where ";
if(strlen($mydetails['city']) > 0) {
$sql .= "cityname in (".$mydetails['city'].") and ";
}
$sql .= 'fromdate <= expirydate and expirydate >= curdate() order by rand()';
但是$ SQL是<之間缺少一切>。調試器顯示$ sql的值爲:
select * from tbl_adsinfo where fromdate = curdate() order by rand()
這是如此基本我只是迷路了。我不認爲<或>是特殊字符嗎?我已經嘗試轉義他們,並使用雙引號,而這是相同的。
這是怎麼回事?
你是通過某種基於網絡的編輯器來做到這一點嗎?可能是某些東西的剝離看起來是一個無效的HTML標記。嘗試顛倒順序(所以它是`> ... <`),或者用`</>`實體替換它們,看看是否有幫助。 – 2011-01-11 19:05:33
回顯你的$ mydetails ['city']變量。我打賭由於某種原因它是空的。 – dqhendricks 2011-01-11 19:10:02