MySQLi no devuelve resultados de la base de datos

Este es mi codigo:

<?php

include('config.php');

$mysqli = new mysqli($db['host'], $db['user'], $db['pass'], $db['name']);
if ($mysqli->connect_error)
    throw new Exception('Couldn\'t connect to MySQL: ' . $mysqli->connect_error);

// Check for a ID parameter
if(isset($_GET['id']) && !empty($_GET['id']))
{
    $skinId = (int)$_GET['id'];

    // Build a query to get skin info from the database
    $stmt = $mysqli->prepare('SELECT name, description, author, timestamp, url FROM `skins` WHERE id=?');
    $stmt->bind_param('i', $skinId);

    // Execute query
    $stmt->execute();
    $stmt->bind_result($result['name'], $result['desc'], $result['auth'], $result['time'], $result['url']);

    echo $result['name'];
} else {
    // Show a 404 page
    echo "bad";
}

$mysqli->close();

?>

Cuando se ejecuta, no obtengo ningún resultado. Puedo verificar eso $skinId tiene una ID de piel válida cuando lo intento, y no es una variable vacía. Cuando ejecuto la misma declaración en localhost usando phpMyAdmin, obtengo la fila adecuada con toda la información solicitada en la consulta. Cuando lo hago print_r($result) Entiendo esto:

Array
(
    [name] => 
    [desc] => 
    [auth] => 
    [time] => 
    [url] => 
)

¿Alguien sabe lo que está pasando? Gracias por adelantado. :)

preguntado el 16 de mayo de 11 a las 17:05

¿Estás seguro de que esa identificación está en la base de datos? -

1 Respuestas

debe hacer $ stmt-> fetch () después del comando $ stmt-> bind_result para obtener los datos de la base de datos en su matriz de resultados

contestado el 16 de mayo de 11 a las 21:05

¡Maldita sea! Sabía que sería algo simple. Gracias :) - Josh

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.