调试的时候没有正常运行,而是显示出源文件的部分代码:db_host = "localhost"; $this->db_user = "root"; $this->db_pw = ""; $this->db_name = "ty0000"; $this->info = "ty_"; } //连接到指定的数据库 function connect() { $this->link = mysql_connect($this->db_host,$this->db_user,$this->db_pw); if(!$this->link) $this->info .= '数据库链接失败了 '; else $this->info .= '数据库可以正常工作 '; if(mysql_select_db($this->db_name,$this->link)) $this->info .= '与数据库'.$this->db_name.'连接成功 '; else header("location:error.php"); } //执行sql语句 function &query($sql) { mysql_query("set names 'gb2312'"); $this->results = mysql_query($sql); if(!$this->results) $this->info .= 'SQL语句执行失败了 '; else $this->info .= 'SQL语句执行成功 '; return $this->results; } //关闭数据库链接,清空记录集 function close() { if($this->rs) mysql_free_result($this->rs); $this->info .= '记录集已经清空 '; if($this->link) mysql_close($this->link); $this->info .= '已经断开了和数据库'.$this->db_name.'的连接 '; } //返回数据库操作信息供程序员调试 function info() { return $this->info; } } $db = new mysql(); ?> 并且没有错误提示
我的源文件为
<?
/*********************************************
*
* 文件名: mysql.php
* 作 用: 数据库链接类
*
* *
*********************************************/
class mysql
{
  var $db_host;
  var $db_user;
  var $db_pw;
  var $db_name;
  var $link;
  var $results;
  var $rows;
  var $sql;
  var $info;
  
  //构造函数
  function mysql()
  {
    $this->db_host  = "localhost";
    $this->db_user  = "root";
    $this->db_pw    = "";
    $this->db_name  = "ty0000";
    $this->info     = "ty_";
  }  //连接到指定的数据库
  function connect()
  {
    $this->link = mysql_connect($this->db_host,$this->db_user,$this->db_pw);
if(!$this->link)
  $this->info .= '数据库链接失败了 ';   
else
  $this->info .= '数据库可以正常工作 ';
if(mysql_select_db($this->db_name,$this->link))
  $this->info .= '与数据库'.$this->db_name.'连接成功 ';
else 
    header("location:error.php");
  }

  //执行sql语句
  function &query($sql)
  {
    mysql_query("set names 'gb2312'");
  $this->results = mysql_query($sql);
if(!$this->results)
  $this->info .= 'SQL语句执行失败了 ';
else 
  $this->info .= 'SQL语句执行成功 ';
return $this->results;
  }

  //关闭数据库链接,清空记录集
  function close()
  {
    if($this->rs)
  mysql_free_result($this->rs);
  $this->info .= '记录集已经清空 ';
    if($this->link)
      mysql_close($this->link);
      $this->info .= '已经断开了和数据库'.$this->db_name.'的连接 ';
  }

  //返回数据库操作信息供程序员调试
  function info()
  {
    return $this->info;
  }
}$db = new mysql();
?>大家帮我看看是哪里出错了啊。谢谢。 就是这个代码,前几天还运行正常,今天就突然出错了

解决方案 »

  1.   

    很奇怪啊  前几天就是好好的  今天突然这样。  而且没有任何错误提示,把部分源代码显示出来了  是从$this->db_host 开始的 我怀疑是不是“$this->”这里出了问题
      

  2.   

    <?php
    /*********************************************
    ....
      

  3.   

    如果你贴的就是全部的显示 ....检查这句
    $this->db_host = "localhost";
    有没有
    误改为:
    $this?>db_host = "localhost";
    或类似的:)
      

  4.   

    非常感谢三楼 , 问题解决了. 这样写“<?” 引起的。 改成“<?php”后正常。  谢谢大家