Comunidad PHPeros
Lenguajes => PHP => (POO) Programación Orientada a Objetos => Mensaje iniciado por: iStocker en 18 de Enero de 2013, 06:47:06 am
-
Bueno, llevo bastante con éste problema & ya he recurrido a muchos amigos que saben de programación pero ninguno logró ayudarme así que me decidí a publicarlo aquí. El problema consiste en que realizo una consulta donde debería de devolver todos los registros en la tabla, el problema es que sólo devuelve uno, ya lo he hecho de muchas formas, pero siempre resulta en lo mismo, quisiera que revisarán el código que hice & pudieran ayudarme.
Gracias de antemano.
https://gist.github.com/264631ec7c61c06d59cc
public function Furnis($c_id)
{
if(isset($c_id))
{
$furnis = self::$c->query("SELECT * FROM items WHERE c_id='".$c_id."'");
if($furnis->num_rows)
{
$row = $furnis->fetch_array(MYSQLI_NUM);
foreach($row as $k => $v)
{
$efurnis[] = $v;
}
return $efurnis;
$furnis->free();
}
else
{
return $error = true;
}
}
else
{
$furnis = self::$c->query("SELECT * FROM items ORDER BY id DESC");
$row = $furnis->fetch_array(MYSQLI_ASSOC);
foreach($row as $keys)
{
$efurnis[] = $keys;
}
return $efurnis;
$furnis->free();
}
}
-
Cuanto tiempo sin pasar por este foro, pero si, estoy vivo jaja.
Podrias intentarlo de esta manera y me dices que tal.
$query = self::$c->multi_query("SELECT * FROM items ORDER BY id DESC");
do {
if ($focux = self::$c->store_result()) {
while ($mrfocux = $focux->fetch_assoc()) {
foreach($mrfocux as $key => $value) {
$datos[$key][] = $value;
}
}
$focux->close();
}
}
while ($mysqli->next_result());
return $datos;
-
Cuanto tiempo sin pasar por este foro, pero si, estoy vivo jaja.
Podrias intentarlo de esta manera y me dices que tal.
Nada, La incluí en mi función & tampoco funcionaba, creé una nueva función por si algo de mi función causaba el error, & me seguía dando error. Me sale un error con la variable de $mysqli, probé cambiándola con la de la conexión establecida & seguía dandome error, probé con otra función que me sugirió un error & por alguna razón estaba dispuesto a tirarme error en la línea 67, en la cuál no tenía nada.
-
Si, sin querer se me olvido cambia la variable $mysqli por la de tu conexion; otra cosa cual es el error que te da?
-
Si, sin querer se me olvido cambia la variable $mysqli por la de tu conexion; otra cosa cual es el error que te da?
El error era que usará otra función de mysqli, la cuál no recuerdo, lo siento >.<
Bueno, un amigo me ayudó a solucionar el error haciendo un array multidimensional en el cuál creamos una variable afuera del while ($i) & en cada incremento se le definía un número a la matriz, lo demás era el array de la consulta ñ.ñ
-
Que raro, acabo de probar el método que te dije y funciono perfectamente, sera que se me olvido decirte que la función te devuelve un array con todos los datos extraídos, tenias que luego mostrar todos los datos del array con algún bucle.
-
Que raro, acabo de probar el método que te dije y funciono perfectamente, sera que se me olvido decirte que la función te devuelve un array con todos los datos extraídos, tenias que luego mostrar todos los datos del array con algún bucle.
Strict Standards: mysqli::next_result(): There is no next result set. Please, call mysqli_more_results()/mysqli::more_results() to check whether to call this function/method in C:\Directorio on line 51
Ése es el error que sale, & bueno, lo del array lo sé, intenté con foreach pero no funcionó, igual con otros bucles, pero siguió sin funcionar.
Si no mal recuerdo multi_query se utiliza para hacer dos o más consultas, concatenando las consultas con variables, tal vez eso cause el error.
-
Hola, como aporte, diría que no uses fetch_array, ya que, esto te devuelve el doble de información que un fetch_assoc, eso, saludos.
-
Hola, como aporte, diría que no uses fetch_array, ya que, esto te devuelve el doble de información que un fetch_assoc, eso, saludos.
Si defines qué tipo de matriz desea que devuelva no lo hace, MYSQLI_NUM, MYSQLI_ASSOC.
Aún así muchas gracias por la ayuda ñ.ñ Cerraría el tema si pudiera, creo que lo resportaré como solucionado a ver si lo cierran o algo.
-
Tal vez no tenga nada que ver esto, pero ya me ha sucedido.
Intenta reemplazar el return por echo.
-
Tal vez no tenga nada que ver esto, pero ya me ha sucedido.
Intenta reemplazar el return por echo.
ufff no recomiendo eso...
-
Tal vez no tenga nada que ver esto, pero ya me ha sucedido.
Intenta reemplazar el return por echo.
El caso de usar POO es que retorne un resultado, no que lo imprima:v o así lo veo yo, es más, en ocasiones no necesitas imprimir un resultado, solo leerlo & procesarlo. De igual manera lo arregle creando un while & la variable que le asigné creaba un arreglo para poder acceder a los datos ñ.ñ
-
El caso de usar POO es que retorne un resultado, no que lo imprima:v o así lo veo yo, es más, en ocasiones no necesitas imprimir un resultado, solo leerlo & procesarlo. De igual manera lo arregle creando un while & la variable que le asigné creaba un arreglo para poder acceder a los datos ñ.ñ
En caso de usar POO no, en caso de usar una función.