//===============初始化==================== classconstruct{public$host; public$user; public$password; public$sqlname; public$table;function__cons...
//===============初始化==================== class construct{public $host; public $user; public $password; public $sqlname; public $table;function __construct($host,$user,$password,$sqlname) { $this->host=$host; $this->user=$user; $this->password=$password; $this->sqlname=$sqlname; $this->table=$table;} }//===================连接数据库====================class sql extends construct{ function connect(){ $connect=mysql_connect($this->host,$this->user,$this->password)or die ("connect error"); $select=mysql_select_db("$this->sqlname")or die ("selece error"); echo "连接数据库成功
"."选择数据库".$this->sqlname."成功
"; }}//===================输出表值====================class table extends sql{function tablea(){ $selectfrom="SELECT * FROM $this->table"; //问题在这里 $query=mysql_query($selectfrom);while($row=mysql_fetch_array($query)){ print_r($row); } echo "显示数据库成功
";}}$a=new table ("localhost","root","","lsr","important");$a->connect();$a->tablea();提示错误:( ! ) Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in E:\PHP\wamp\www\lsr\classsql.php on line 38Call Stack$selectfrom="SELECT * FROM $this->table";这里 为什么用$this->table会报错?直接使用我的数据库名没问题。
展开
PHP数据库连接与查询错误分析
本文档中,作者在尝试使用PHP连接并查询数据库时遇到了一个问题:在调用`mysql_fetch_array()`函数时,传入的参数不是一个资源,而是一个布尔值。问题出在`$selectfrom`变量的SQL查询语句上。当尝试从`$this->table`获取表名时,导致了错误。解决方案可能是确保`$this->table`已正确设置并包含有效的数据库表名。

268

被折叠的 条评论
为什么被折叠?



