Ver Mensaje Individual
  #5 (permalink)  
Antiguo 23/12/2015, 12:07
jonyjdv
 
Fecha de Ingreso: julio-2014
Mensajes: 115
Antigüedad: 9 años, 8 meses
Puntos: 1
Respuesta: Problema con bind_param()

Cita:
Iniciado por pateketrueke Ver Mensaje
Caray, dicha función espera un array y tu lo arruinas todo.

Código PHP:
Ver original
  1. // MAL
  2. // esta linea no es necesaria, no necesitas convertir dicho array a un string: es es tu error
  3.   $escapar_datos=implode(',',$escapar_datos);
  4.   call_user_func_array([$stmt, 'bind_param'], $escapar_datos);
  5.  
  6. // BIEN
  7. //  $escapar_datos=implode(',',$escapar_datos);
  8. call_user_func_array([$stmt, 'bind_param'], $escapar_datos);

¿Por qué no lees el manual de dicho método para que entiendas cómo usarlo?
Dios que paciencia tienes conmigo

Te juro que los leo pero debido a mi bajo conocimiento cuando no me sale algo empiezo a googlear, y hay cosas que las busco y consigo solucionarlo pero otras las complico mas.

He introducido el codigo que me has pasado, el implode lo tenia cuando usaba
Código PHP:
$stmt->bind_param('s'$escapar_datos); 
y despues me dio por usarlo con el call_user_func_array porque poniendo el codigo tal cual me lo has pasado me da el siguiente error:

Warning: Parameter 2 to mysqli_stmt::bind_param() expected to be a reference, value given in

Código PHP:
            if ($stmt $SQL_insert->prepare($consulta)) { 
                
                
$array_final = array('ss',$escapar_datos[0],$escapar_datos[1]);

                
call_user_func_array([$stmt'bind_param'], $array_final);

                                
//Tampoco funciona con $escapar_datos que a diferencia del anterior $array_final no contiene las 'ss'

                                
call_user_func_array([$stmt'bind_param'], $escapar_datos);

                
$stmt->execute();

                
$stmt->close();
            } 
Muchisimas gracias por todo