php頁面傳遞參數的問題,求指教
本帖最後由 hisweetgirl 於 2015-04-17 18:09:12 編輯
$query = $db->findall("p_newsclass where f_id='$_GET[cid]'");
while ($row = $db->fetch_array($query)) {
$news_class_in.= $row[id].",";
}
echo $news_class_in=$news_class_in."$_GET[cid]";
就是顯示新聞列表,能正確列印出來
但是寫到SQL中
$result = mysql_query("select id from p_newsbase where cid in ($news_class_in)");
$total = mysql_num_rows($result);
pageft($total, 20);
if ($firstcount < 0)
$firstcount = 0;
$query = $db->findall("p_newsbase where cid in ($news_class_in) limit $firstcount, $displaypg");
就出現錯誤了,擷取的cid居然變了
------解決思路----------------------
$news_class_in.= $row[id].",";
這樣拼接出來的結果是會多出一個逗號,可以用substr或者rtrim去掉:
while ($row = $db->fetch_array($query)) {
$news_class_in.= $row[id].",";
}
$new_class_in = rtrim($new_class_in, ",");
echo $new_class
看你的,應該就是cid in()括弧中的最後一個逗號引起的sql錯誤
------解決思路----------------------
URL上是id,怎麼用$_GET[
cid] 擷取?
------解決思路----------------------
最後一張圖,錯誤的sql語句,多了一個“,”。
你這樣寫迴圈最後會多一個逗號
------解決思路----------------------
$news_class_in 這個變數最後多了一個逗號。
加一句:
$news_class_in = trim($news_class_in, ',');