2012-11-28 34 views
0

我用這樣一個的MySQL從9個值錯誤

$escaped = mysql_real_escape_string($_GET['submenu']); 

$result = $db->select('SELECT pagename,metakeywords,metadescription,title1,title2,title3,article1,article2,article3 FROM sub_menu WHERE id='.$escaped.''); 

查詢和元標記等這樣

<meta name="description" content="<?php echo $result[0]['metadescription']; ?>" /> 

與價值的工作,但對於價值給予了6 TITLE1 ,title2,title3,article1,article2和article3,我總是得到相同的結果,即使im在不同的行中,我從一個完全不同的行得到結果,並且總是得到相同的結果,但所有其他值都更改爲新的要求的。

對我來說很奇怪,有人想知道這個問題可能是什麼?

+0

嘗試在'$ db-> select()'前回顯查詢並確保它是正確的。 – Osiris

+0

顯示循環而不是如何獲得結果。 –

回答

0

檢查與print_r($結果)一切都很好。然後每次print_r時都會粘貼一個模板父...並且看到一個模板覆蓋了另一個查詢的$ result,因此article1等不再存在。所以PHP使用了最後一個值,就像$ result [0] ['article1']等等......我的壞消息:D

+0

考慮到這將不會幫助未來的訪客,請刪除問題:) –

0

這聽起來像問題是在你的數據,而不是你的查詢。直接轉到數據庫,然後運行查詢。結果是否與您在PHP頁面上看到的一致?

我還會推測,數據庫規範化存在一些問題,這可能會導致您的INSERT/UPDATE腳本(我認爲是其他地方)的問題,這反過來又是數據庫異常的原因。

我經常在我的學生項目中看到類似的問題。