Buenas tardes amigos,
Tengo un problema con PHP POO y es que hasta hace 1 semana yo usaba un codigo de esta forma:
function listarPrecios(){
$conexion = conexion();
$resultado=$conexion->query("SELECT codigo, descripcion,precio FROM servicios WHERE 1");
while($row=$resultado->fetch_array(MYSQLI_ASSOC)){
echo "<article>";
echo "<div class='big'> ";
echo "<h2><a href='single.php?id_post=".$row['codigo']."'>".$row['descripcion']."</a></h2>";
echo "<p>".$row['precio']."</p>";
echo "</div>";
echo "</article>";
}
}
Pero resulta que ahora ha PHP no le gusta.. y llevo horas buscando que narices le pasa a esto pero no encuentro solución para el problema
Call to a member function fetch_array() on a non-object
Posiblemente sea una tonteria.... pero que no lo veo :-(
Gracias por cualquier información.
Buscar el error..
$resultado=$conexion->query("") or trigger_error($mysqli->error)
O tambien por que no devuelve nada..
Cita de: EFEX en 23 Septiembre 2014, 23:26 PM
Buscar el error..
$resultado=$conexion->query("") or trigger_error($mysqli->error)
O tambien por que no devuelve nada..
Muchas gracias, no sabia que podía controlar los errores asi, pero ya encontré el "error"
Ya encontré el "error" al parecer es un problema con las dobles comillas ( " " ) en la query, las cambio por comillas simple ( ' ' ) y todo funciona bien
$resultado=$conexion->query('select codigo, descripcion, precio from servicios');
LoooooL
1º Te tendría que funcionar
2º Las palabras reservadas SELECT, FROM, UPDATE, WHERE... en mayúsculas ¡SIEMPRE!
3º Puedes usar las comillas dobles (funcionan), pero quizás luego tenías comillas simples en los SELECT... esto se usa para incluir $variables sin tener que concatenar.
4º Usa Codeigniter con Active Records! xD
Cita de: dimitrix en 24 Septiembre 2014, 01:04 AM
2º Las palabras reservadas SELECT, FROM, UPDATE, WHERE... en mayúsculas ¡SIEMPRE!
3º Puedes usar las comillas dobles (funcionan), pero quizás luego tenías comillas simples en los SELECT... esto se usa para incluir $variables sin tener que concatenar.
solo me funciona con comilla simple y las sentencias en minuscula XD
¿Es tu código?
Quizás tengas alguna palabra del select declarada (que no reservada) en PHP.
Eso podría hacer que te fallara.
Muestranos tu metodo query() de tu clase conexion y ahí veremos el problema.