include("mysql.class.php");//连接数据库
class select extends mysql {
private $one=array();//一条记录数组
private $all=array();//查询所有记录数组
//查询一条记录
function getOne($sql){
$rs=$this->query($sql);
$this->one=$this->fetch_array($rs);
return $this->one;
}
//查询所有记录
function getAll($sql) {
$rs=$this->query($sql);
while($row=$this->fetch_array($rs)){
$this->all[]=$row;
}
return $this->all;
}
}使用时能不能只new一次
$db= new select();$new=$db->getAll("SELECT * FROM new");
print_r($new);
echo "<br>";
echo "<br>";
echo "<br>";
$bbs=$db->getAll("SELECT * FROM bbs ");
echo "<br>";
echo "<br>";
echo "<br>";
print_r($bbs);
第一个打印数组print_r($new);正常
第二个打印数组print_r($bbs);显示如下在第一个数组后面追加了值Array ( [0] => Array ( [0] => 1 [id] => 1 [1] => 夏日 [title] => 夏日 [2] => 夏季室外紫外线强烈 [content] => 夏季室外紫外线强烈 [3] => 2009-05-25 [datetime] => 2009-05-25 [4] => 5 [num] => 5 ) [1] => Array ( [0] => 2 [id] => 2 [1] => 防治“计算机皮肤”七招 [title] => 防治“计算机皮肤”七招 [2] => 整天要对着电脑的办公室女性,脸上总会无端地生出许多恼人的小痘痘 [content] => 整天要对着电脑的办公室女性,脸上总会无端地生出许多恼人的小痘痘 [3] => 2009-05-25 [datetime] => 2009-05-25 [4] => 8 [num] => 8 ) [2] => Array ( [0] => 1 [id] => 1 [1] => 网站做得很好 [title] => 网站做得很好 [2] => [email protected] [mail] => [email protected] [3] => 网站做得很好 [content] => 网站做得很好 [4] => 2009-05-25 [datetime] => 2009-05-25 ) )
我要的结果是print_r($bbs);Array ( [0] => Array ( [0] => 1 [id] => 1 [1] => 网站做得很好 [title] => 网站做得很好 [2] => [email protected] [mail] => [email protected] [3] => 网站做得很好 [content] => 网站做得很好 [4] => 2009-05-25 [datetime] => 2009-05-25 ) ) 我是$db2= new select();
$bbs=$db2->getAll("SELECT * FROM bbs ");去解决了能不能
$db= new select();$new=$db->getAll("SELECT * FROM new");
print_r($new);
echo "<br>";
echo "<br>";
echo "<br>";
$bbs=$db->getAll("SELECT * FROM bbs ");
echo "<br>";
echo "<br>";
echo "<br>";
print_r($bbs);高手能不能加个接口去解决呢想学习一下接口如果能用接口去解决请加接口解决无限感谢!!
解决方案 »
- 从数据库中取出的中文,不能再网页上显示?而且也无法在语句中用==进行比较?
- php能不能访问access数据库?怎样访问?
- 请问站内搜索到底怎么写啊!只知道用like不会应用!愁死小妹了!谁能提供下源码啊?
- 请教前辈们,关于PHP.INI的问题,拜托版主不要删除或转移
- php限制IP和IP段的代码
- php写的B/S,想点击链接后把服务器那边数据库里的有关数据导成xls下载下来,求实现方法
- 【200分】两个我网站的漏洞问题,软件扫出来的,但是我没有看出来。
- 一个请求判断的问题?
- php mysql 数据操作问题
- curl返回302,浏览器访问正常,求助!
- mysql 时间查询
- preg_replace replacement 问题,调用自定义函数失败
结果是Array ( [0] => Array ( [0] => 1 [id] => 1 [1] => 夏日 [title] => 夏日 [2] => 夏季室外紫外线强烈 [content] => 夏季室外紫外线强烈 [3] => 2009-05-25 [datetime] => 2009-05-25 [4] => 5 [num] => 5 ) [1] => Array ( [0] => 2 [id] => 2 [1] => 防治“计算机皮肤”七招 [title] => 防治“计算机皮肤”七招 [2] => 整天要对着电脑的办公室女性,脸上总会无端地生出许多恼人的小痘痘 [content] => 整天要对着电脑的办公室女性,脸上总会无端地生出许多恼人的小痘痘 [3] => 2009-05-25 [datetime] => 2009-05-25 [4] => 8 [num] => 8 ) )
$rs=$this->query($sql);
$this->all = array();//初始化下...
while($row=$this->fetch_array($rs)){
$this->all[]=$row;
}
return $this->all;
}
虽然是私有的,但是你每次调用getAll的时候,还会将上一次的覆盖.可以考虑做一个多维数组保存,如果你需要保存上一次的搜索结果.
如果是想覆盖的话,就直接在使用前清空 function getAll($sql) {
$this->all = array();
$rs=$this->query($sql);
while($row=$this->fetch_array($rs)){
$this->all[]=$row;
}
return $this->all;
}
不是初始化下...吗如果不是怎么样初始化下...
private $one=array();//一条记录数组
private $all=array();//查询所有记录数组回foolbirdflyfirst 的话我是定义 private $all=array();//查询所有记录数组返回用
return $this->all;不知道对不对
class select extends mysql {
private $one=array();//一条记录数组
private $all=array();//查询所有记录数组
//查询一条记录
function getOne($sql){
$rs=$this->query($sql);
$this->one=$this->fetch_array($rs);
return $this->one;
}
//查询所有记录
function getAll($sql) {
$rs=$this->query($sql);
$this->all=array(); // 在这里实例化
while($row=$this->fetch_array($rs)){
$this->all[]=$row;
}
return $this->all;
}
}
$this->all = array()不就可以在getAll执行之后强制清空结果数组了吗?
...
function getAll($sql) {
$rs=$this->query($sql);
$this->all = array();
while($row=$this->fetch_array($rs)){
$this->all[]=$row;
}
return $this->all;
}
...
//使用
$db= new select();$new=$db->getAll("SELECT * FROM new");
print_r($new);
echo "<br>";
echo "<br>";
echo "<br>";
$bbs=$db->getAll("SELECT * FROM bbs ");
echo "<br>";
echo "<br>";
echo "<br>";
print_r($bbs);