目前我已经由一个数据库类“db_mysql.class.php
class dbclass{
...
}
并且写了操作语句
$sql= "SELECT * FROM...";
在进行数据库实际操作的时候直接用
$query = $db->query($sql)可以吗?我的疑问的关键是,这个并没有把dbclass类实例化,而是直接用$db->query($sql)这样是否能行的通啊?
我是看别人的代码学习的,是个新手,希望各位能够帮帮小弟。

解决方案 »

  1.   

    首先,php为连接mysql提供了函数库,这个函数库是mysqli,使用这个函数库时,可以使用面向对象或面向过程的语法。
    其次,$db->query($sql)返回了一个结果对象,赋值给$query
    最后,看你刚开始是否有这条语句,@$db=new mysqli('localhost','root','password','要操作的数据库'),这样才能行的通
      

  2.   

    感谢二楼的提醒
    $db = new dbclass这个的确是必须要的,
    程序里require_once了common.inc.php这个文件,这里面已经实例化了db_class为新对象$db
    同时追加个疑问
    “require_once语句可以在php文件的任意位置吗?”1.  function fname(){
    2.  ...
    3.  $db->query($sql)/*这里调用$db对象的方法query()*/
    4.  }
    5.  //这里的require_once是在调用其中新实例$db之后才require_once文件,这种顺序是允许的吗?
    6.  require_once ("common.inc.php");