Ver Mensaje Individual
  #3 (permalink)  
Antiguo 09/12/2015, 16:30
Avatar de herzbazi
herzbazi
 
Fecha de Ingreso: febrero-2012
Mensajes: 612
Antigüedad: 12 años, 9 meses
Puntos: 36
Respuesta: mysqli_fecht_array no recibe parametro

muchas gracias por tu respuesta ahi mando el codigo completo

Código PHP:
Ver original
  1. class Insertando{
  2.  
  3.     private $table;
  4.     private $data_from;
  5.     private $url;
  6.  
  7.     public function __construct(){
  8.       $this->table = mysqli_real_escape_string(Conectar::con(),$_POST['table']); // recibe el nombre de la tabla
  9.       $this->data_form =$_POST['data']; // recibe los datos del formulario como un array
  10.       $this->url =$_POST['url']; // recibe la url a redireccionar
  11.  
  12.     }
  13.  
  14.     public function insert(){
  15.  
  16.       $verifica = "SELECT * FROM ".$this->table." WHERE ";
  17.       foreach($this->data_form as $key=>$value){
  18.             if (is_array($value)){
  19.               $key;
  20.             }else{
  21.              $verifica.=$key." = '".$value."' " ;
  22.              $verifica.=" && ";
  23.           }
  24.        }
  25.  
  26.         $verifica= substr($verifica, 0, -3);
  27.         $result = mysqli_query(Conectar::con(),$verifica);
  28.  
  29.         if(mysqli_num_rows($result) == 0){   // aqui es donde tengo el problema (abajo explico )
  30.  
  31.         $sql="INSERT INTO ".$this->table."(";
  32.  
  33.         foreach(array_keys($this->data_form) as $key){
  34.           $sql .= $key." , ";
  35.         }
  36.  
  37.         $sql= substr($sql, 0, -2);
  38.         $sql .= ") VALUES (";
  39.  
  40.         foreach($this->data_form as $key){
  41.           $sql .= " ' ".$key."' , ";
  42.         }
  43.  
  44.         $sql= substr($sql, 0, -2);
  45.         $sql .= ")";
  46.  
  47.         mysqli_query(Conectar::con(),$sql);
  48.         header('Location: principal.php?page='.$this->url."&m=1");
  49.  
  50.         }elseif(mysqli_num_rows($result) == 1){
  51.         header('Location: principal.php?page='.$this->url."&m=2");
  52.         }
  53.     }
  54.  
  55.  
  56.   }

el num_rows siempre queda con valor cero y por ese motivo siempre inserta y no me detecta que ese registro ya existe y que no deberia de insertar si no lanzar mensaje diciendo que ese registro ya existe. pero siempre pasa de largo y no entindo por que por que cuando como dije antes imprimo $verifica me da = SELECT * FROM usuarios WHERE nombre = 'gd' &&apellido = 'dd' && telefono = 'dd' && correo = '[email protected]' && contrasena = '123' && tipo_usuario = '1' y al pasarlo por mysqli_query deberia de tomar ya un valor.

gracias por la ayuda
__________________
Enseña todo lo que sepas...
Aprende todo lo que puedas..