Lo primero que intente fue habilitar las opciones de debug:
error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
ini_set('display_errors',1);
ini_set('display_errors', 'On');
...el resto de código...
Sin embargo, la salida no evidenciaba ningun mensaje de error fatal.
De manera seguida, intente extraer la información de configuración del hosting mediante el siguiente codigo PHP:
php phpinfo();
Alli se indicaba que se trataba de una versión PHP 5.2.
Finalmente, despues de dos dias indagando en Internet, encontre que el error se debia a un bug de PHP al usar fetch_assoc()
Hay dos workarounds para este problema:
Primera alternativa
Utilice fetch_row en lugar de fetch_assoc.
"//$row=$result->fetch_assoc();" the code is not working...
"$row=$result->fetch_row();" the code is working...
Segunda alternativa
Utilice el siguiente código de workaround.
$finfo = $result->fetch_fields(); $nc=0; foreach ($finfo as $val)
{$row_key[$nc++]=$val->name;} //---
for ($i=0; $i<$num_results; $i++) {
//$row=$result->fetch_assoc();
$row_val=$result->fetch_row();$row=array_combine($row_key,$row_val);
echo "".($i+1)." Title: ";
echo htmlspecialchars(stripslashes($row['title']));
echo "
Author: ";
echo stripslashes($row['author']);
}
Este problema al parecer estaba presente en 2002 de acuerdo a un reporte en bugs.php.net.
Espero que sea de utilidad.
No hay comentarios:
Publicar un comentario