Daniel Segovia

Blog personal

Archive for agosto, 2011

Recuperar el contenido como array con índices numéricos

Hacer un comentario

Para recuperar el contenido en forma de array con índices numéricos usaremos el método fetch_array
El método nos devolverá una fila de resultados o NULL en caso que no haya resultados.

En este ejemplo haremos una consulta con la condición que nos traiga una sola fila (LIMIT 1)

<?php
$mysqli = new mysqli("localhost", "user", "pass", "database");
 
if (mysqli_connect_errno()) {
    printf("Imposible conectarse: %s\n", mysqli_connect_error());
    exit();
}
 
$query = "SELECT client, partner FROM business LIMIT 1";
$result = $mysqli->query($query);
 
/* array numérico */
$row = $result->fetch_array();
echo "Client: " . $row[0] . "<br />Partner: " . $row[1];
$mysqli->close();
?>

Si la consulta nos trae más de un resultado podemos ciclarla hasta que se acaben los resultados, el ciclo terminará cuando el método nos devuelva NULL

<?php
$mysqli = new mysqli("localhost", "user", "pass", "database");
 
if (mysqli_connect_errno()) {
    printf("Imposible conectarse: %s\n", mysqli_connect_error());
    exit();
}
 
$query = "SELECT client, partner FROM business";
$result = $mysqli->query($query);
 
/* array numérico en cada vuelta del ciclo*/
while($row = $result->fetch_array()){
    echo "Client: " . $row[0] . "<br />Partner: " . $row[1] . "<hr />";
}
$mysqli->close();
?>

Written by Daniel Segovia

agosto 24th, 2011 at 1:27 pm

Recuperar el contenido con Mysqli

Hacer un comentario

Extraeremos la información de la base de datos en 4 pasos

  • Nos conectamos (mysqli)
  • Preparamos la sentencia SQL (prepare)
  • La ejecutamos (execute)
  • Definimos variables para asignar los resultados (bind_result(
  • Recorremos las filas (fetch)
<?php
$mysqli = new mysqli("localhost", "root", "", "teste");
 
if (mysqli_connect_errno()) {
    echo "No se pudo conectar: " . mysqli_connect_error();
    exit();
}
 
$sql = "SELECT nombre, apellido FROM personas";
 
if ($stmt = $mysqli->prepare($sql)) {
    $stmt->execute();
 
    $stmt->bind_result($nombre, $apellido);
 
     while ($stmt->fetch()) {
        echo "$nombre $apellido<br />";
    }
 
    $stmt->close();
}
 
$mysqli->close();
?>

Written by Daniel Segovia

agosto 1st, 2011 at 5:40 pm