欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

php mysql有关问题 数据库连接成功执行析构函数后 后面的代码不执行什么原因

更新时间: 2014-01-05 00:54:28 责任编辑: Author_N1

 

php mysql问题 数据库连接成功执行析构函数后 后面的代码不执行什么原因
<?php
/*
 * class mysql
 */
class mysql_class
{
public $host;
public $root;
public $passwd;
public $database;
public $ut;
public $link;

////construct
function __construct($host,$root,$passwd,$database,$ut)
{
$this->host = $host;
$this->root = $root;
$this->passwd = $passwd;
$this->database = $database;
$this->ut = $ut;
$this->connect();
}

////destruct
function  __destruct()
{
echo $this->link;
mysql_close($this->link);
echo "destruct<br />";
}

////mysql connect
function  connect()
{
$this->link = mysql_connect($this->host,$this->root,$this->passwd);
 if(!$this->link)
 {
  die("Could not connect".mysql_error()."<br />");
 }
 else {
  echo "Connect successed<br />";
 }
 mysql_select_db($this->database,$this->link) or die("No Database:".$this->database."<br />");
 mysql_query("SET NAME 'UTF8'");
}
}

////执行下面test1 
////或执行下面test2


?>
执行test1:代码
////test1 
 $ms = new mysql_class("localhost","admin","admin","php1000","UTF8");
 $ms = null;
 echo '<br />mysqlclass end== <br />';
 $con = mysql_connect ( "localhost", "admin", "admin" );
 if (! $con) {
  die ( 'Could not connect: ' . mysql_error () );
 }
 else{
  echo "<br />11connect successed";
 }
 echo $con."==con<br />";
 // 一些代码...
 mysql_close($con);
//test1结果如下:(为啥结果里没有11connect successed Resource id #3==con这些内容输出)
Connect successed
No Database:php1000
Resource id #3destruct

执行test2:
////test2 代码
$con = mysql_connect ( "localhost", "admin", "admin" );
 if (! $con) {
  die ( 'Could not connect: ' . mysql_error () );
 }
 else{
  echo "<br />11connect successed<br />";
 }
 echo $con."==con<br />";
 // 一些代码...
 mysql_close($con);
 $ms = new mysql_class("localhost","admin","admin","php1000","UTF8");
 $ms = null;
 echo '<br />mysqlclass end== <br />';
 //test2 结果:
11connect successed
Resource id #3==con
Connect successed
No Database:php1000
Resource id #5destruct

--参考方法--
mysql_select_db($this->database,$this->link) or die("No Database:".$this->database."<br />");
既然输出了 No Database:php1000
就表示你的程序提前结束了,后面的内容没有执行,自然就没有输出
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 00:54:28
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/1232/
本文WWW.DOC100.NET DOC100.NET版权所有。