2013-09-25 165 views
-2

如果這個問題看起來太明顯/不好看,我會提前道歉。將mysql查詢轉換爲mysqli語法

我一直習慣使用舊的mysql語法邏輯,你能幫我把舊的mysql語法轉換成更新的mysqli

我有這個疑問

$query = "select * from `names`"; 
echo (mysql_num_rows($query) !== 0) ? mysql_result($query, 0, 'firstname') : 'name not found'; 

有人可以幫助我轉換這個查詢到mysqli格式?我已經研究了這一點,我的代碼變體似乎不適用於我。

+2

如何做這項工作:「(mysql_num_rows ($ query)!== 0)「? mysql_num_rows(resource $ result)需要mysql_query()的結果,而不是字符串 – user4035

+0

'有人可以幫我把這個查詢轉換成mysqli格式嗎?'不是沒有有效的代碼。 – Prix

+2

說實話,**你不需要任何轉換**在這裏。你真正需要的是:1.忘記這個代碼是一個最惡夢的噩夢。 2.從頭開始學習mysqli **。** 3.創建(或採用)**輔助函數庫**來運行查詢。 –

回答

0

我不會幫助轉換這一個。因爲你根本不需要任何轉換。你真正需要的是:

  1. 忘記此代碼作爲一個最惡夢的噩夢。
  2. 然後學習基本的SQL。
  3. 然後學習基本的mysqli以及如何格式化你的查詢正確使用佔位符
  4. 然後創建(或採用)一個輔助庫運行查詢,裏面有所有的mysqli。
  5. 最後,使用這個庫來得到想要的結果。

讓我們safeMysql as example of such a library(假設你有一個$name,並希望得到相應的名字,否則我無法從你的代碼作任何意義):

$query = "SELECT firstname FROM `names` WHERE name = ?s"; 
$first = $db->getOne($sql, $name); 
if (!$first) { 
    echo 'name not found'; 
}