bueno puse en practica la base de datos que construimos entre varios, pero me pasa lo siguiente
cada vez que hago una consulta se une al arreglo que me devolvio en el anterior un ejemplo
Código PHP:
Ver originalinclude ("DbFactory.php");#aca inclui tambien el archivo db.php que es donde tengo mis funciones para traer datos y cosas asi
$var=new db();
$row=$var->ejecutarSentencia("select * from articulos");
$ro=$var->selectAll('usuario');
echo "<br/><br/><br/>";
aca el archivo db para que me digan si es que tengo algo mal aca
Código PHP:
Ver original<?php
class db
{
protected $_conect;
protected $_query;
protected $_row;
protected $_result;
public function __construct()
{
$this->_conect=DatabaseFactory::create('config.ini');
}
public function selectAll($table,$condicion=NULL){
try{
{
$this->_query=$this->_conect->prepare("SELECT * FROM $table");
$this->_query->execute();
}
else{
$this->_query=$this->_conect->prepare("SELECT * FROM $table WHERE $condicion");
$this->_query->execute();
}
while($this->_row=$this->_query->fetch()){
$this->_result[]=$this->_row;
}
//$this->_conect="";
return $this->_result;
}
catch(PDOExeption $e){
echo $e->getMessaage();
}
}
public function ejecutarSentencia($query,$parametro=NULL,$return=true)
{
try{
/*$site_path = realpath(dirname(__FILE__)).'\config.ini';
$this->_conect=DatabaseFactory::create($site_path);*/
//$this->_conect=DatabaseFactory::create('C:/xampp/htdocs/taquilla/ayuda/clase_conexion_bien_echa/config.ini');
/*$site_path = realpath(dirname(__FILE__)).'\config.ini';
$this->_conect=DatabaseFactory::create($site_path);*/
$this->_query=$this->_conect->prepare($query);
$this->_query->execute($parametro);
if($return==true){
while($this->_row=$this->_query->fetch()){
$this->_result[]=$this->_row;
}
//$this->_conect="";
return $this->_result;
}
else{
//$this->_conect="";
return $this->_query;
}
}
catch(PDOExeption $e){
echo $e->getMessaage();
}
}
public function insert($table,$campos,$valores)
{
echo "Los datos deben de estar en formato de arreglo";
}
try{
/*$site_path = realpath(dirname(__FILE__)).'\config.ini';
$this->_conect=DatabaseFactory::create($site_path);*/
foreach($valores as $id=>$valor){
$valorIngresar[]="'".$valor."'";
}
$valors=implode(",",$valorIngresar);
$sql="INSERT INTO $table ($campo) VALUES ($valors)";
echo $sql;
$this->_conect
->exec($sql);
//$this->_conect="";
}
catch(PDOExeption $e){
echo $e->getMessaage();
}
}
public function deleteAll($table,$return=false)
{
try{
/*$site_path = realpath(dirname(__FILE__)).'\config.ini';
$this->_conect=DatabaseFactory::create($site_path);*/
//$this->_conect=DatabaseFactory::create('config.ini');
$this->_result
=$this->_conect
->exec("DELETE FROM $table");
if($return){
return $this->_result;
}
//$this->_conect="";
}
catch(PDOExeption $e){
echo $e->getMessaage();
}
}
public function reiniciarTabla($table){
try{
/*$site_path = realpath(dirname(__FILE__)).'\config.ini';
$this->_conect=DatabaseFactory::create($site_path);*/
//$this->_conect=DatabaseFactory::create('config.ini');
$this->_result
=$this->_conect
->exec("TRUNCATE TABLE $table");
//$this->_conect="";
}
catch(PDOExeption $e){
echo $e->getMessaage();
}
}
}
el trae los datos bien pero si se fijan cuando hago la consulta de dos cosas diferentes en una misma pagina en la segunda tambien me incluye los datos de la primera xq??
Cita: Array ( [0] => Array ( [id_articulo] => 1 [0] => 1 [titulo] => Aprendiendo a Maquetar con CSS [1] => Aprendiendo a Maquetar con CSS [contenido] => estamos comenzando [2] => estamos comenzando [usuario] => carlos [3] => carlos ) )
Array ( [0] => Array ( [id_articulo] => 1 [0] => 1 [titulo] => Aprendiendo a Maquetar con CSS [1] => Aprendiendo a Maquetar con CSS [contenido] => estamos comenzando [2] => estamos comenzando [usuario] => carlos [3] => carlos ) [1] => Array ( [usuario] => carlos [0] => carlos [pass] => 123456 [1] => 123456 [nivel] => administrador [2] => administrador [estatus] => habilitado [3] => habilitado ) )
probe cerrando la conexion con PDO pero cuando la intentanba volver a abrir me dice que no puedo redeclarar la clase DatabaseFactory ebtonces que puedo hacer?? no me da la mente ya