Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
olá a todos,
essa eh a minha primeira vez que tento trabalhar usando classes e estava tentando fazer uma consulta no mysql, porém sempre que eu tento limitar as linhas quando eu vou exibir o resultado sempre exibe um dado a menos
<?php
class db {
var $con;
var $sdb;
var $lin;
var $ft = array();
//conecta ao bd
function db($host,$dbuser,$dbpass,$db) {
$this->con = mysql_connect($host,$dbuser,$dbpass) or die(mysql_error());
$this->sdb = mysql_select_db($db) or die(mysql_error());
}
//queries
function st($table,$where) {
if(!empty($where)) {
$where = str_replace(array(",","|"),array(" and "," "),$where);
if(count(explode("|",$where)) == 2) {
$where = " where ".$where;
} else {
$o = explode("-",$where);
if($o[0] == 'ob') {
$orow = $o[1]." ";
$otype = (($o[2]==d)?'desc':'asc');
if($o[3] == 'lt') {
$olt = " limit ".$o[4];
}
$where = " order by ".$orow.$otype.$olt;
} elseif($o[0] == 'lt') {
$where = " limit ".$o[1];
}
}
}
$query = mysql_query("select * from ".$table.$where) or die(mysql_error());
$this->lin = mysql_num_rows($query);
$this->ft = mysql_fetch_array($query);
return $query;
}
//fetch_array
function fr($query) {
$this->ft = mysql_fetch_assoc($query);
//$this->ft = array_map("stripslashes", $this->ft);
return $this->ft;
}
}
$con = new db('localhost','user','pass','db');
$a = $con->st('categorias','ob-id-d-lt-2');
echo $con->lin."
";
while($c = $con->fr($a)) {
echo $c['nome'].' | '.$c['id'].'
';
}
?>
o problema eh q qnd eu executo o script ele imprime certo a quantidade de resultados porém ele sempre mostra um a menos
se alguém podesse me ajudar eu agradeceria muito,
vlw
Carregando comentários...