首页 > 后端开发 > php教程 > php+mysql 面向对象 增删改查

php+mysql 面向对象 增删改查

WBOY
发布: 2016-06-23 13:43:32
原创
1126 人浏览过

新手一枚,求指导。

<?php//   Mysql_class.phpclass Mysql{    private $localhost;    private $root;    private $password;	public  $database;     public function __construct($localhost,$root,$password,$database){			//让下面的方式中,若要用到$localhost 变量		$this->localhost = $localhost;											//就用$this->localhost 代替。 		$this->root 	 = $root;		$this->password  = $password;		$this->database  = $database;    }		public function Connect(){		mysql_connect	($this->localhost,$this-root,$this->password);		mysql_select_db ($this->database);		mysql_query 	("set names utf8");	}		public function Close(){		mysql_close();	}			public function myarray($result){					//形参		return mysql_fetch_array($result);	}		public function myquery($sql){		return @mysql_query($sql);	}		public function myrows($result){		return mysql_num_rows($result);	}			public function myselect($users){		return $this->myquery("select * from $users");	}}$db = new Mysql("localhost","root","","stu_system");
登录后复制


<center><table cellpadding="18">	<tr>		<th>id</th>		<th>name</th>		<th>sex</th>		<th>phone</th>	</tr><?php    include_once "mysql_class.php";	    $result = $db->myselect("users");	if(is_array($result)){	while($row=$db->myarray($result)){?>		<tr>		<td width="8%" align="center"> <?php echo $row['id'] 	 ?></td>		<td width="18%" align="center"><?php echo $row['name'] 	 ?></td>		<td width="8%" align="center"> <?php echo $row['sex'] 	 ?></td>		<td width="18%" align="center"><?php echo $row['phone']  ?></td>		<td>			<a href="modify.php?	id   = <?php echo $row['id']  ?>&									name = <?php echo $row['name']?>&									sex  = <?php echo $row['sex'] ?>&									phone= <?php echo $row['phone'] ?>">  修改</a>         <!--   ?什么意思  为GET传输方式-->			<a href="delete.php?	id   = <?php echo $row['id']  ?>">	  删除</a>		</td>	</tr></table></center><?php	}	}	else echo"no result";	mysql_close();?>
登录后复制



获取不到我的资源,找不到问题在哪。


回复讨论(解决方案)

if(is_array($result)){ 这句判断有问题。

$result应是resource,而不是array
你可以var_dump(is_array($result)); 是boolean false的。

改为: if($db->myrows($result)>0){

没有执行 Connect 方法
没有执行 myquery 方法

myselect 方法返回的是资源

没有执行 Connect 方法
没有执行 myquery 方法

myselect 方法返回的是资源


同上

<?phpclass Mysql{    private $localhost;    private $root;    private $password;    public  $database;    private $link;    private $res;      public function __construct($localhost,$root,$password,$database){            //让下面的方式中,若要用到$localhost 变量        $this->localhost = $localhost;                                            //就用$this->localhost 代替。         $this->root      = $root;        $this->password  = $password;        $this->database  = $database;            }         public function Connect(){        $this->link = mysql_connect($this->localhost, $this->root, $this->password);        mysql_select_db ($this->database, $this->link );        mysql_query     ("set names utf8");    }         public function Close(){        mysql_close();    }              public function myarray($result){                    //形参        return mysql_fetch_array($result);    }         public function myquery($sql){        $this->res = mysql_query($sql) or die (mysql_error());        return $this->res;    }         public function myrows($result){        return mysql_num_rows($result);    }              public function myselect($users){        return $this->myquery("select * from $users");    }} $db = new Mysql("localhost","root","","stu_system");$db->Connect();<center><table cellpadding="18">    <tr>        <th>id</th>        <th>name</th>        <th>sex</th>        <th>phone</th>    </tr><?php    include_once "mysql_class.php";    $result = $db->myselect("users");    while($row=$db->myarray($result)){?>       <tr>        <td width="8%" align="center"> <?php echo $row['id']      ?></td>        <td width="18%" align="center"><?php echo $row['name']      ?></td>        <td width="8%" align="center"> <?php echo $row['sex']      ?></td>        <td width="18%" align="center"><?php echo $row['phone']  ?></td>        <td>            <a href="modify.php?    id   = <?php echo $row['id']  ?>&                                    name = <?php echo $row['name']?>&                                    sex  = <?php echo $row['sex'] ?>&                                    phone= <?php echo $row['phone'] ?>">  修改</a>         <!--   ?什么意思  为GET传输方式-->            <a href="delete.php?    id   = <?php echo $row['id']  ?>">      删除</a>        </td>    </tr></table></center><?php    }    mysql_close();
登录后复制

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板