Foros del Web » Programando para Internet » PHP »

No me inserta el registro php, mysqli

Estas en el tema de No me inserta el registro php, mysqli en el foro de PHP en Foros del Web. Buenas noches, tengo un problema estoy tratando de insertar un registro con esta función pero no funciona, que tengo malo?, este es el código que ...
  #1 (permalink)  
Antiguo 08/01/2015, 22:26
 
Fecha de Ingreso: septiembre-2011
Mensajes: 233
Antigüedad: 13 años, 2 meses
Puntos: 1
No me inserta el registro php, mysqli

Buenas noches, tengo un problema estoy tratando de insertar un registro con esta función pero no funciona, que tengo malo?, este es el código que estoy utilizando:

Código PHP:
public function insertarLA(){
            
$link=new Conexion();
            
$conexion=$link->conectar();
            
$consulta=$conexion->prepare('INSERT INTO libro_autor(idAutor, idLibro) VALUES (?,?)');
            
$consulta->bind_param('ii',$this->idAutor,$this->idLibro);
            if(
$consulta->execute())
            {
                
$consulta->close();
                return 
true;
            }
            else{
                
$consulta->close();
                return 
false;
            }
        } 
para insertar el registro lo paso así:
Código PHP:
$objAutor->setIdAutor(3);//se llama al método set de id autor
$objAutor->setIdLibro(53);//se llama al método set de id libro
if($objAutor->insertarLibroAutor()==false)//se llama al método de insertar libro autor, en el caso que sea falso mostrar un mensaje
{
    
$mensajeError="Error! No se puede agregar el autor";

por qué no me funciona? no trato de ver el error
  #2 (permalink)  
Antiguo 09/01/2015, 02:05
 
Fecha de Ingreso: septiembre-2014
Mensajes: 180
Antigüedad: 10 años, 2 meses
Puntos: 14
Respuesta: No me inserta el registro php, mysqli

Mira a ver qué consulta está generando e intentando ejecutar y lánzala manualmente en el gestor de base de datos para ver el error exacto.

Viendo el código, supongo que haciendo un var_dump() de $consulta en alguna propiedad de este objeto estará la consulta. O si no, es posible que tenga algún método para verla...
__________________
Unelink.es - VPS, servidores dedicados, hosting y dominios. 10 años a tu lado.
  #3 (permalink)  
Antiguo 09/01/2015, 03:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: No me inserta el registro php, mysqli

Si no verificas si MySQL devuelve un error, jamás sabrás que pasa.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 09/01/2015, 05:01
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: No me inserta el registro php, mysqli

Donde recibes estos parámetros en tu Método o Función??
$consulta->bind_param('ii',$this->idAutor,$this->idLibro);

sin eso poco o nada podrás hacer...
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #5 (permalink)  
Antiguo 09/01/2015, 05:28
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 7 meses
Puntos: 326
Respuesta: No me inserta el registro php, mysqli

Yo diria, que o bien aqui falta código, o te has equivocado de método...

insertarLA() != insertarLibroAutor()
__________________
>> Eleazan's Source
>> @Eleazan
  #6 (permalink)  
Antiguo 09/01/2015, 09:30
 
Fecha de Ingreso: septiembre-2011
Mensajes: 233
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: No me inserta el registro php, mysqli

Hola gracias por responderme,
los métodos que recibo los parametros son:
este de la clase autor
Código PHP:
public function setIdAutor($idAutor)
$this->idAutor=$idAutor;

y este de la clase libro
Código PHP:
public function setIdLibro($idLibro)
$this->idLibro=$idLibro;

la función se llama insertarLA(), es que tenia antes otro nombre pero el problema era que como el clase autor es heredada de libro no tenia la variable idLibro dela clase libro como protected pero le coloque así y si me funciono

Etiquetas: inserta, mysqli, registro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:06.