Heim  >  Artikel  >  Backend-Entwicklung  >  php+mysql 面向对象 增删改查

php+mysql 面向对象 增删改查

WBOY
WBOYOriginal
2016-06-23 13:43:321086Durchsuche

新手一枚,求指导。

<?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();
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn