MySQL PHP 資料庫連接配接 查詢 代碼如下,求幫忙看一下吧!
getConn();}public function getConn(){$db = require_once 'config/config.php';$this->dbhost = $db['dbhost'];$this->dbuser = $db['dbuser'];$this->dbpsw = $db['dbpsw'];$this->dbchar = $db['dbchar'];$this->dbname = $db['dbname'];$this->tablepre = $db['tablepre'];$this->conn = mysql_connect($this->dbhost,$this->dbuser,$this->dbpsw) or die(mysql_error()."
Mysql連接配接失敗!");mysql_select_db($this->dbname,$this->conn) or die(mysql_error()."
資料庫通路出錯");mysql_query("set names ".$this->dbchar,$this->conn);}public function query($sql){return mysql_query($sql,$this->conn) or die(mysql_error()."
SQL執行出錯:$sql");}public function getDataArrays($sql,$type = MYSQL_BOTH){$result = $this->query($sql);$refArr = array();while ($row = mysql_fetch_array($result,$type)){$refArr[] = $row;}return $refArr;}public function closeConn(){mysql_close($this->conn);}}
調用如下:
$conn = new Conn();$sql = "select * from qj_content";$contentList = $conn->getDataArrays($sql,MYSQL_ASSOC);$conn->closeConn();
執行結果如下:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\AppServ\www\qjcentury\conn.php on line 45
第45行代碼在上面用紅色标注了
回複讨論(解決方案)
那塊用紅色标注的被弄成php代碼了,我暈
是
public function getDataArrays($sql,$type = MYSQL_BOTH){
$result = $this->query($sql);
$refArr = array();
while ($row = mysql_fetch_array($result,$type)){
$refArr[] = $row;
}
return $refArr;
}
怎麼都沒有人來?
幾次提問 不論簡單還是困難都沒有人來幫幫解答一下,
CSDN什麼時候變得這麼冷清了?
估計sql 出問題了
在while 上 echo mysql_error(); 看看
LZ看看W3C上面的例子吧
文法
mysql_fetch_array(data,array_type)
參數 描述
data 可選。規定要使用的資料指針。該資料指針是 mysql_query() 函數産生的結果。
array_type
可選。規定傳回哪種結果。可能的值:
MYSQL_ASSOC - 關聯數組
MYSQL_NUM - 數字數組
MYSQL_BOTH - 預設。同時産生關聯和數字數組
query 方法改成這樣public function query($sql){ $rs = mysql_query($sql,$this->conn) or die(mysql_error()."
SQL執行出錯:$sql"); return $rs; }
因為 mysql_query($sql,$this->conn) or die(mysql_error()."
SQL執行出錯:$sql")
是一個邏輯表達式,直接傳回的話隻能是邏輯值。
是以要寫作
$rs = mysql_query($sql,$this->conn) or die(mysql_error()."
SQL執行出錯:$sql");
因為 = 的優先級高于 or 是以 $rs = mysql_query($sql,$this->conn) 被先執行
算式變為
$rs or die(mysql_error()."
SQL執行出錯:$sql");
當然還是邏輯表達式啦,但其結果被抛棄了
本文原創釋出php中文網,轉載請注明出處,感謝您的尊重!