PHP - error al insertar registros en base de datos

 
Vista:
sin imagen de perfil
Val: 15
Ha aumentado su posición en 13 puestos en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por kosbalt (5 intervenciones) el 13/09/2020 19:06:55
estoy intentado insertar valores en una tabla y no hay manera, tengo el siguiente codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
 
require('../Connections/conexion.php');
session_start();
 
$strNombre = $_POST['name'];
$strAApellido = $_POST['aapellido'];
$strBApellido = $_POST['bapellido'];
$strDni = $_POST['dni'];
$strEstadoCivil = $_POST['estadocivil'];
$strPadre = $_POST['padre'];
$strMadre = $_POST['madre'];
$strNaceCalle = $_POST['calle'];
$strNaceMunicipio = $_POST['municipio'];
$strNaceProvincia = $_POST['provincia'];
$strUltimadire = $_POST['ultidireccion'];
$strCausamuerte = 	$_POST['causamuerte'];
$strFechaHora = $_POST['fechayhoramuerte'];
$intSexo = 1;
$intMadrid = 0;
 
 
$insertar = ("INSERT INTO tblfallecido VALUES ('$strNombre','$strAApellido','$strBApellido','$strDni','$strEstadoCivil','$strPadre','$strMadre','$strNaceCalle','$strNaceMunicipio','$strNaceProvincia','$strUltimadire','$strCausamuerte','$strFechaHora','$intSexo','$intMadrid') ");
 
$query = mysqli_query($conexion,$insertar);
 
if($query){
 
   echo "<script> alert('correcto');
   </script>";
 
}else{
    echo "<script> alert('incorrecto');
	location.href = 'insertar_usuario.php';
    </script>";
}
?>
las variables llegan correctamente a la paguina y tienen el nombre del campo de la tabla el unico dato que tiene la tabla que no esta pasando el insert es un id autoincremental

La conexion funciona, he revisado todos los nombres.
Pero me tira el incorrecto y no consuigo que inserte los datos, no se que mas revisar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por joel (1269 intervenciones) el 13/09/2020 20:55:02
has probado ha mostrar el contenido de la variable $insertar y pegarla directamente en MySQL haber si te muestra algún error?

1
echo $insertar;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 15
Ha aumentado su posición en 13 puestos en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por kosbalt (5 intervenciones) el 13/09/2020 21:09:17
lo probe por descartar y me muestra una paguina con el texto en pantalla.
he desabilitado el sricpt de incorrecto porque no de ja de salir y he revisado la base de datos y sigue sin insertar nada.
he probado a sustituir las variables de entrada del post directamente por datos, para poder verificar todo mas rapido y esto es lo que me tira

1
INSERT INTO tblfallecido VALUES ('Manolo','eldel','bombo','08545698F','Viudo','Manuel','Geronima','c/clavel 7 3ºa','alovera','Guadalajara','c/san pedro 3 bajo b','infarto','14:30 del 11-8-22','1','0')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por joel (1269 intervenciones) el 14/09/2020 08:39:05
si esa consulta la ejecutas directamente en la base de datos... te funciona?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Luis
Val: 128
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por Luis (31 intervenciones) el 14/09/2020 09:51:15
Hola, no te puede funcionar, te faltan los nombres de los campos, antes de VALUES, entre paréntesis y separados con coma.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 15
Ha aumentado su posición en 13 puestos en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por kosbalt (5 intervenciones) el 14/09/2020 10:38:26
acabo de probar de las dos maneras y comento, si pongo los parametros antes del value sigue igual, al ejecutar el codigo directamente en la base de datos si me tira un error, este es el codigo con los campos antes de value:

1
INSERT INTO tblfallecido ('strDni','strNombre','strAApellido','strBApellido','strEstadoCivil','strPadre','strMadre','strNaceCalle','strNaceMunicipio','strNaceProvincia','strUltimadire','strCausamuerte','strFechaHora','intSexo','intMadrid') VALUES ('03142895F','Manolo','eldel','bombo','Viudo','Manuel','Geronima','c/clavel 7 3ºa','alovera','Madrid','c/san pedro 3 bajo b','infarto','14:30 del 11-8-22','1','0')

he cambiado el dni al primero por que es el primer dato despues del id en la tabla, ya por descartar cosas.

y este es el error que me da:
1
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''strDni','strNombre','strAApellido','strBApellido','strEstadoCivil','strPadre','' at line 1



Adjunto la imagen de la tabla por si acaso
tblfallecido
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de italo_pm
Val: 920
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por italo_pm (193 intervenciones) el 14/09/2020 15:44:40
hola

tus variables son tan claras que ya ni las controlas....

si en tu tabla tienes campos varchar e int en php al momento de ejecutar una query debes de mantener el mismo tipo de dato tal cual en tu sentencia ya que deberá la misma cosa que la ejecutes en php y en tu base se datos, solo que en php le pasas variables o bucles y en tu database todo es fijo (por asi decirlo)

Tus campos INT deberán ir en ese formato y no en el formato de texto (con un apostrofo ' o doble comilla ")

corrige ese detalle y debería de funcionar.

salud2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 15
Ha aumentado su posición en 13 puestos en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por kosbalt (5 intervenciones) el 14/09/2020 16:36:43
acabo de probar cambiando varias zonas y nada, de echo he probado ca cambiar los int por BOOLEAN y pasar un true y false en lugar de los int y sige fallando igual. Tambien he probado cambiarlos por varchar y sigue fallando, el ultimo fragmento con el que estoy trabajando es:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$strNombre = "Manolo";
$strAApellido = "eldel";
$strBApellido = "bombo";
$strDni = "03142895F";
$strEstadoCivil = "Viudo";
$strPadre = "Manuel";
$strMadre = "Geronima";
$strNaceCalle = "c/clavel 7 3a";
$strNaceMunicipio = "alovera";
$strNaceProvincia = "Madrid";
$strUltimadire = "c/san pedro 3 bajo b";
$strCausamuerte = 	"infarto";
$strFechaHora = "14:30 del 11-8-22";
$strSexo = 'true';
$strMadrid = 'false';
 
$insertar = ("INSERT INTO tblfallecido ('strDni','strNombre','strAApellido','strBApellido','strEstadoCivil','strPadre','strMadre','strNaceCalle','strNaceMunicipio','strNaceProvincia','strUltimadire','strCausamuerte','strFechaHora','strSexo','strMadrid') VALUES ($strDni,$strNombre,$strAApellido,$strBApellido,$strEstadoCivil,$strPadre,$strMadre,$strNaceCalle,$strNaceMunicipio,$strNaceProvincia,$strUltimadire,$strCausamuerte,$strFechaHora,$strSexo,$strMadrid) ");
1
INSERT INTO tblfallecido ('strDni','strNombre','strAApellido','strBApellido','strEstadoCivil','strPadre','strMadre','strNaceCalle','strNaceMunicipio','strNaceProvincia','strUltimadire','strCausamuerte','strFechaHora','strSexo','strMadrid') VALUES (03142895F,Manolo,eldel,bombo,Viudo,Manuel,Geronima,c/clavel 7 3a,alovera,Madrid,c/san pedro 3 bajo b,infarto,14:30 del 11-8-22,541325,algo)

pero me da el mismo fallo

ya ni lo intento desde la paguina sirectamente desde la base de datos y me tira el error
1
2
3
4
5
6
7
8
9
Error
consulta SQL: Copiar
 
 
INSERT INTO `tblfallecido`(`strDni`, `strNombre`, `strAApellido`, `strBApellido`, `strEstadoCivil`, `strPadre`, `strMadre`, `strNaceCalle`, `strNaceMunicipio`, `strNaceProvincia`, `strUltimadire`, `strCausamuerte`, `strFechaHora`, `strSexo`, `strMadrid`) VALUES (03142895F,Manolo,eldel,bombo,Viudo,Manuel,Geronima,clavel 7 3ºa,alovera,Madrid,c/san pedro 3 bajo b,infarto,14:30 del 11-8-22,true,false)
MySQL ha dicho: Documentación
 
#1064 - Algo está equivocado en su sintax cerca ''strDni','strNombre','strAApellido','strBApellido','strEstadoCivil','strPadre','' en la linea 1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por joel (1269 intervenciones) el 14/09/2020 20:32:35
No entiendo muy bien el error que te da, pero el contenido que es varchar, tiene que ir entre comillas...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de italo_pm
Val: 920
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por italo_pm (193 intervenciones) el 14/09/2020 22:22:06
Hola

lo primero es probar en mysql, mas que todo es copiar ejemplos que funcionen y oficiales, si ibas a la web oficial de mysql o mariadb o w3scholl hubieras encontrado todo lo necesario para armar bien tu query.

como se hace un insert? pues sin poner entre ' o " el nombrede los campos y solo en ' o " los VALUES si es que son de texto o sin ' o " si fuera numérico.

1
2
INSERT INTO tu_tabla (campo1char, campo2char, campo3char, campo4int, campo5int, campo6int)
VALUES ('$var_campo1char', '$var_campo2char', '$var_campo3char', $var_campo4int, $var_campo5int, $var_campo6int);

una query base en php: campos de tu tabla SIN ' o " y en los VALUES char o texto en ' o " y SIN ' o " en campos INT o numericos.

1
2
3
4
5
6
7
8
9
10
11
12
13
// ejemplo de insert mysql desde php con variables.
 
$insertar = "INSERT INTO tu_tabla (campo1char, campo2char, campo3char, campo4int, campo5int, campo6int) VALUES ('$var_campo1char', '$var_campo2char', '$var_campo3char', $var_campo4int, $var_campo5int, $var_campo6int)";
 
if(mysqli_query($conexion, $insertar)){
 
    echo "OK, insert ejecutado correctamente.";
 
} else{
 
    echo "ERROR: Un error ha ocurrido $insertar. " . mysqli_error($conexion);
 
}

sostituye los nombres de tus campo y variables, prueba y practica con calma.

escribes los errores con todo tu nuevo codigo modificado.

salud2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 15
Ha aumentado su posición en 13 puestos en PHP (en relación al último mes)
Gráfica de PHP

error al insertar registros en base de datos

Publicado por kosbalt (5 intervenciones) el 14/09/2020 23:20:03
ahora si, perfecto muchas gracias, me queda mucho por practicar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar