<?php
// En nuestra clase clase_db añadimos la siguiente función
public function get_consulta($query, $parametros = array()) {
if(!$this->handler)
$this->conectar(); // se encarga ya de conectar él mismo a la BD
// Prepara la consulta
$statement = $this->handler->prepare($query);
// Valida la consulta
if($statement === false)
{
$errorInfo = $this->handler->errorInfo();
throw new SpoonDatabaseException($errorInfo[2]);
}
// Si tiene parámetros
foreach($parametros as $label => $value)
$statement->bindValue((is_int($label) ? $label + 1 : (string) $label), $value, $this->getType($value));
$statement->execute();
if($statement->errorCode() != 0)
{
$aError = $statement->errorInfo();
throw new SpoonDatabaseException($aError[2]);
}
// Devuelve las keys
//$aRecord = $statement->fetch(PDO::FETCH_ASSOC);
$aRecords = (array) $statement->fetchAll(PDO::FETCH_ASSOC);
// Retorna null cuando no hay nada
//return ($aRecord === false) ? null : $aRecord;
return (count($aRecords) != 0) ? $aRecords : null;
}
?>
<?php
// Ahora desde cualquier otro fichero PHP podemos requerir la clase de la BD y usar esa función
require("clase_db.php");
$mi_clase = new clase_db(); // en $mi_clase ya tenemos una instancia de esa base de datos con la q trabajar
$consulta = "select titulo from peliculas";
$registros = $mi_clase ->get_consulta($consulta);
// Ahora mismo en $registros tenemos todos los registros resultantes de la consulta
// Para recorrerlo ahora lo mejor es un for
$total_reg = count($registros);
for ($i=0; $i<$total_reg; $i++) {
echo $registros[$i]["titulo"];
echo "<br>";
}
unset($mi_clase); // Cuando no vayamos a usarlo más la eliminamos del todo
?>
Si tienes alguna duda o problema en PHP haz la pregunta en el comentario de esta entrada e intentaré responderte lo antes posible
No hay comentarios:
Publicar un comentario