2014-01-26 34 views
0

我決定用爲mysql mysqli的,我已經有一些錯誤時,這是​​用我的第一次mysqli的,我不知道這個錯誤是什麼,有什麼建議?PHP的錯誤使用的mysqli

Warning: mysql_query() expects parameter 2 to be resource, string given in /home/u250000297/public_html/forum/system/db.php on line 45 
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in /home/u250000297/public_html/forum/system/db.php on line 45 
Warning: mysql_query() expects parameter 2 to be resource, string given in /home/u250000297/public_html/forum/system/db.php on line 45 
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in /home/u250000297/public_html/forum/system/db.php on line 45 
Warning: mysqli_query() expects parameter 1 to be mysqli, string given in /home/u250000297/public_html/forum/system/db.php on line 33 
Warning: mysqli_error() expects exactly 1 parameter, 0 given in /home/u250000297/public_html/forum/system/db.php on line 33 

線32-36

function query($query) { 
    $sql = mysqli_query($query, $this->db) or die(mysqli_error()); 
    return $sql; 
    mysqli_free_result($sql); 
} 

線44-48

function fetch($query) { 
    $sql = mysqli_fetch_array(mysql_query($query, $this->db)); 
    return $sql; 
    mysqli_free_result($sql); 
} 
+1

這個問題實際上並沒有什麼關係OOP只是因爲你」重新從mysql遷移到mysqli。你可以選擇通過一個實際的mysqli對象來完成你所有的mysqli調用,但是你在這裏使用的是程序版本。 –

回答

1

試試這個,你已經使用mysql_query代替mysqli_query

function query($query) { 
$sql = mysqli_query($this->db, $query) or die(mysqli_error()); 
... 
} 

function fetch($query) { 
    mysqli_fetch_array(mysqli_query($this->db, $query)); 
.... 
} 

,而不是

function fetch($query) { 
    mysqli_fetch_array(mysql_query($query, $this->db)); 
    ... 
} 
+0

同樣在mysqli_query()中,db連接參數應該是第一個,第二個是查詢。 'mysqli_query($ this-> db,$ query)' –

+0

仍然有相同的錯誤 – user116046

0

嘗試使用mysqli_query()函數,這樣也許

$data = mysqli_query($dbc, $query);

mysqli_fetch_array($data)

注意與mysqli_query()傳遞兩個參數:

  1. 數據庫連接變量
  2. 查詢變量

然後使用mysqli_query()函數的結果作爲參數傳遞給mysqli_fetch_array()函數:d