Ver Mensaje Individual
  #3 (permalink)  
Antiguo 28/06/2008, 11:52
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: problema como php y mysql

Sin ánimos de ofender a nadie, ¿para qué usar mysql_fetch_object si querés generar un vector?
Es mucho más sencillo obtener un vector...

Qué tal esto:

Código PHP:
function consultaAvector($consulta) { 
    
$resultado mysql_query($consulta) or die(mysql_error()."\nConsulta: $query"); 
    
$devolver = array();
 
    while (
$registro mysql_fetch_assoc($resultado)) { 
        
$devolver[] = $registro
    } 
    return 
$devolver

Mucho más simple y si no me equivoco genera el mismo resultado...


Ahora, la respuesta a la primer pregunta.
Hats, para la próxima pon el código entre etiquetas [ php] y [/ php] (sin los espacios), así obtendrás un código mostrado con formato y resaltado de sintaxis

Quiero modificar un poco tu código para que quede más claro:
Código PHP:
function toArrayi($res) {
    if( 
mysqli_num_rows($res) == )
        return 
0;

    
$tmp = array();

    while( 
$row mysqli_fetch_array($res) ) {
        
$tmp[] = $row;
    }

    return 
$tmp;
}

$link mysqli_connect('puntoIP','User','Pass','BD');
$qry "CALL pprod_AcumuladoSProducto()";
$res mysqli_query($link,$qry);

// ¿por qué cierras la conexión a la base de datos, ANTES de obtener los registros?
// movemos la línea mysqli_close($link); al final
$ar toArrayi($res);
mysqli_close($link);

// veamos TODO lo que contiene $ar
var_dump($ar); 

No veo ningún error en el código original, más allá de los detalles que te menciono. Pero te recomiendo usar esta versión "corregida" a ver qué sale. De entrada me parece extraño que cerraras el enlace a la bd antes de obtener los datos, quizás eso tenga algo que ver.


Saludos.

Última edición por AlvaroG; 28/06/2008 a las 12:04