elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el ttwitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  call to a member function fetch_array() on boolean
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: call to a member function fetch_array() on boolean  (Leído 3,457 veces)
geshiro

Desconectado Desconectado

Mensajes: 178


Ver Perfil
call to a member function fetch_array() on boolean
« en: 6 Abril 2016, 05:28 »

que he hecho mal que no me deje agregar en la parte de la variable $brand me tira on boolean y como pudiera resolverlo

Código
  1. case 'add_product':
  2. $result = new brand();
  3. $newProduct = new product();
  4. $code    = trim(stripslashes(htmlspecialchars($_POST['code'])));
  5. $product = trim(stripslashes(htmlspecialchars($_POST['product'])));
  6. $price   = trim(stripslashes(htmlspecialchars($_POST['price'])));
  7. $stock   = trim(stripslashes(htmlspecialchars($_POST['stock'])));
  8. $brand =  $result->getBrandById($_POST['brand']);
  9. if($newProduct->add($code,$product,$brand,$price,$stock)){
  10. echo "success";
  11. }
  12. else{
  13. echo "No se registro";
  14. }
  15. break;
  16.  




Código
  1. function getBrandById($id){
  2. $sql = "SELECT idbrand,code_,brand FROM brand where idbrand={$id}";
  3. $result = $this->conexion->conexion->query($sql);
  4. $array = array();
  5. while($record = $result->fetch_array(MYSQL_NUM)){
  6. $array[] = $record;
  7. }
  8. return $array;
  9. $this->conexion->cerrar();
  10. }
  11.  


En línea

engel lex
CoAdmin
***
Desconectado Desconectado

Mensajes: 15.347



Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #1 en: 6 Abril 2016, 05:58 »

Código:
$result = $this->conexion->conexion->query($sql);

al igual que mysql clasico

http://php.net/manual/es/pdo.query.php
Citar
PDO::query() devuelve un objeto PDOStatement, o FALSE en caso de error.

Código:
$result->fetch_array(MYSQL_NUM)
funciona solo si $result es un PDOStatement... pero si fue error, es FALSE que es booleano y como tal no tiene una propiedad fetch_array

la solución más simples es ver si hubo errores

Código:
if(!$result) echo $this->conexion->conexion->errorInfo()


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
geshiro

Desconectado Desconectado

Mensajes: 178


Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #2 en: 6 Abril 2016, 06:22 »

y como lo repararia es que ya no como, si me hechas la mano?
En línea

engel lex
CoAdmin
***
Desconectado Desconectado

Mensajes: 15.347



Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #3 en: 6 Abril 2016, 06:28 »

me cito a la respuesta al problema que ya te di

la solución más simples es ver si hubo errores

Código:
if(!$result) echo $this->conexion->conexion->errorInfo()

y por consecuencia si hubo errores, es corregir el error


aunque huelo donde está el error

Citar
SELECT idbrand,code_,brand FROM brand where idbrand={$id}

estás pidiendole entre los elementos, la tabla?
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
geshiro

Desconectado Desconectado

Mensajes: 178


Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #4 en: 6 Abril 2016, 06:39 »

si
sige igual prove quitando brand y nada, y con lo de mostrar el error no da error

Mod: No hacer doble post
« Última modificación: 6 Abril 2016, 06:42 por engel lex » En línea

engel lex
CoAdmin
***
Desconectado Desconectado

Mensajes: 15.347



Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #5 en: 6 Abril 2016, 06:41 »

(como en examen)
justifica tu respuesta:


(explicame que intentas hacer pidiendo eso el brand)

estás serudo del enlace al query?
Código:
$this->conexion->conexion->query
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
geshiro

Desconectado Desconectado

Mensajes: 178


Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #6 en: 6 Abril 2016, 06:47 »

lo que hace es que no muestre el valor numerico(id) de brand si no el nombre me ya lo borre de hecho porque esta de mas por cosa solo deje idbrand para solo tomarlo idnumerico y en el combo muestra el valor que es no numerico solo que es esa parte nomas la que no me deja
En línea

geshiro

Desconectado Desconectado

Mensajes: 178


Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #7 en: 6 Abril 2016, 07:06 »

me ayudas a crear la solucion man?
En línea

engel lex
CoAdmin
***
Desconectado Desconectado

Mensajes: 15.347



Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #8 en: 6 Abril 2016, 07:11 »

has algo...

vas a hacer

Código:
if(!$result) var_dump($this->conexion);

si da una cantidad grande de datos, pegalo en pastebin y pasa el link
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
geshiro

Desconectado Desconectado

Mensajes: 178


Ver Perfil
Re: call to a member function fetch_array() on boolean
« Respuesta #9 en: 6 Abril 2016, 22:03 »

SELECT idbrand,code_ FROM brand where idbrand=1[["1","A6411la"]]


Código
  1.  
  2. function getBrandById($id){
  3. $sql = "SELECT idbrand,code_ FROM brand where idbrand={$id}";
  4. echo $b = $sql;
  5. $result = $this->conexion->conexion->query($sql);
  6. $array = array();
  7. while($record = $result->fetch_array(MYSQL_NUM)){
  8. $array[] = $record;
  9. }
  10. return $array;
  11. $this->conexion->cerrar();
  12. }
  13. }
  14.  
  15. $ins = new brand();
  16. $r = $ins->getBrandById('1');
  17. echo json_encode($r);
  18.  
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines