PHP - error de insertar

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

error de insertar

Publicado por javier (5 intervenciones) el 08/05/2018 17:25:48
Ahora me ha ocurrido otro error/duda, en unas opciones del formulario de tipo radio button, quiero insertar en una tabla de mi base de datos, el dni y un numero del centro es decir, 1 o 2 o 3 o 4, en función se marque uno u otro, pero al recoger ese entero en la comprobacion, no funciona, me gustaria dejar ese valor de los radio button,ya que el formulario es denso.

Un saludo, espero haberme explicado bien.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!--menu.html-->
<label>Centro de Procedencia</label> <br>
<label>
<input name="cent" type="radio" value="car">
Carmona Sosa
</label>
<label>
<input name="cent" type="radio" value="par">
El Parque
</label>
<input name="cent" type="radio" value="ferr">
Ferrobus
</label>
<label>
<input name="cent" type="radio" value="sebas">
San Sebastian
</label> <br>


//fichero inicio.php

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
$host = "localhost";
$usuario = "root";
$password = "";
$database = "usando_bd";
 
$dni = $_POST['dni'];
$Centro_proc = $_POST['cent'];
 
if ($Centro_proc == 'car') {
	$Centro_proc = 1;
}
if ($Centro_proc == 'par') {
	$Centro_proc = 2;
}
if ($Centro_proc == 'ferr') {
	$Centro_proc = 3;
}
if ($Centro_proc == 'sebas') {
	$Centro_proc = 4;
}
 
 
$conexion=mysqli_connect($host,$usuario,$password) or die("Problemas con la conexión");
 
$db = mysqli_select_db( $conexion, $database ) or die ( "Upps! Pues va a ser que no se ha podido conectar a la base de datos" );
//echo "conexion realizada";
 
$insert = "INSERT INTO `centro_procedencia_alumno` (`Dni_alumno`, `Id_centro`) VALUES ('".$dni."', "$Centro_proc");";
 
$resultado = mysqli_query( $conexion, $insert ) or die ( "Algo ha ido mal en la consulta a la base de datos");
 
$conexion->close();


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
39
40
41
42
43
44
45
--Esta es una parte de mi base de datos
--No me inserta un entero en mi tabla centro_procedencia_alumno,
 
CREATE TABLE `centro_procedencia` (
  `Id_centro` int(1) NOT NULL,
  `Nombre_centro` varchar(15) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
--
-- Volcado de datos para la tabla `centro_procedencia`
--
 
INSERT INTO `centro_procedencia` (`Id_centro`, `Nombre_centro`) VALUES
(1, 'CARMONA SOSA'),
(2, 'EL PARQUE'),
(3, 'FERROBUS'),
(4, 'SAN SEBASTIAN');
 
-- --------------------------------------------------------
 
--
-- Estructura de tabla para la tabla `centro_procedencia_alumno`
--
 
CREATE TABLE `centro_procedencia_alumno` (
  `Dni_alumno` varchar(9) NOT NULL,
  `Id_centro` int(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
 
 
ALTER TABLE `centro_procedencia`
  ADD PRIMARY KEY (`Id_centro`);
 
--
-- Indices de la tabla `centro_procedencia_alumno`
--
ALTER TABLE `centro_procedencia_alumno`
  ADD PRIMARY KEY (`Dni_alumno`) USING BTREE,
  ADD UNIQUE KEY `Id_centro` (`Id_centro`) USING BTREE;
 
----------
ALTER TABLE `centro_procedencia_alumno`
  ADD CONSTRAINT `centro_procedencia_alumno_ibfk_1` FOREIGN KEY (`Dni_alumno`) REFERENCES `alumno` (`Dni_alumno`) ON UPDATE CASCADE,
  ADD CONSTRAINT `centro_procedencia_alumno_ibfk_2` FOREIGN KEY (`Id_centro`) REFERENCES `centro_procedencia` (`Id_centro`) ON UPDATE CASCADE;
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 jose carlos
Val: 134
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

error de insertar

Publicado por jose carlos (48 intervenciones) el 08/05/2018 18:56:25
recuerda que dentro de los radio tienes que declarar un formulario

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<form name= action="fichero_inicio.php" method="POST">
 
!--menu.html-->
<label>Centro de Procedencia</label> <br>
<label>
<input name="cent" type="radio" value="car">
Carmona Sosa
</label>
<label>
<input name="cent" type="radio" value="par">
El Parque
</label>
<input name="cent" type="radio" value="ferr">
Ferrobus
</label>
<label>
<input name="cent" type="radio" value="sebas">
San Sebastian
</label> <br>
    <input type="submit" name="submit" id="submit" value="Insertar"/>
  </form>

para que entienda que datos vas a recibir


en tu archivo //fichero_inicio.php

tienes que declarar los <?php ?> Para poder tener el codigo funcionando

en tu conexion te recomiendo que crees otro documento en php llamado conexion.php
tendra estos elementos

1
2
3
4
5
6
7
8
<?php
	$mysqli=new mysqli("localhost","root","","usando_bd"); //servidor, usuario de base de datos, contraseña del usuario, nombre de base de datos
 
	if(mysqli_connect_errno()){
		echo 'Conexion Fallida : ', mysqli_connect_error();
		exit();
	}
?>

y puedes eliminar la conexion de tu mysql que serian estos


1
2
3
4
5
6
7
8
9
10
$host = "localhost";
$usuario = "root";
$password = "";
$database = "usando_bd";
 
y esta en la segunda parte de abajo
$conexion=mysqli_connect($host,$usuario,$password) or die("Problemas con la conexión");
 
$db = mysqli_select_db( $conexion, $database ) or die ( "Upps! Pues va a ser que no se ha podido conectar a la base de datos" );
//echo "conexion realizada";




solo declararias este codigo

require 'conexion.php'; //Agregamos la conexión
para tener tu conexion


te que dara tu codigo asi de tal manera


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
<?php
 
//fichero inicio.php
 
require 'conexion.php'; //Agregamos la conexión
 
$dni = $_POST['dni'];
$Centro_proc = $_POST['cent'];
 
if ($Centro_proc == 'car') {
$Centro_proc = 1;
}
if ($Centro_proc == 'par') {
$Centro_proc = 2;
}
if ($Centro_proc == 'ferr') {
$Centro_proc = 3;
}
if ($Centro_proc == 'sebas') {
$Centro_proc = 4;
}
	$sql = "INSERT INTO centro_procedencia_alumno (Dni_alumno,Id_centro) VALUES('$dni','$Centro_proc')";
  if($mysqli->query($sql))
    {
        echo "Datos ingresados";
    }
    else
    {
        echo "ERROR: Al ingresar los datos";
    }
 
     ?>



aqui te adjunto una base de datos
por la cual me guia con la tuya
si necesitas algo me envias mensaje
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar