PHP - Consulta para insertar y modificar datos

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

Consulta para insertar y modificar datos

Publicado por lucas (21 intervenciones) el 12/12/2016 23:28:58
Hola buenas tardes.
Estoy trabajando en un proyecto para un final de programacion y la consigna era hacer una pagina en php
en la que se puediera mostrar, cargar, eliminar y modificar datos.
En ultima instancia me agregaron que tenia que filtrar informacion, por lo cual tuve que rediseñar mi base de datos, ya que no estaba relacionada porque no lo necesitaba.

Aca les dejo una imagen de mi base de datos con sus respectivas relaciones:
Base_de_datos


Ahora en cuestion el problema es que no me guarda los datos cuando los cargo.
El mayor problema creo que esta en la parte de "Equipo", Ya que es el que tengo relacionado en todas las tablas y no se de que forma guardarlo

Aca va el codigo

//Este es el formulario por el cual escribo los datos a guardar//

1
2
3
4
5
6
7
8
9
10
11
12
<?php
    include("duracion_sesion.php");
    ?>
	<center>
    	<form action="goleadores-guardar.php" method="POST"><br><br>
        <div class="container">
        	<p><strong>Nombre del equipo:</strong></p><input class="form-control" type="text" REQUIRED name="Equipo" placeholder="Nombre del equipo" value="" /><br><br>
            <p><strong>Nombre del jugador:</strong></p><input class="form-control" type="text" REQUIRED name="Nombre" placeholder="Nombre del jugador" value="" /><br><br>
            <p><strong>Apellido del jugador:</strong></p><input class="form-control" type="text" REQUIRED name="Apellido" placeholder="Apellido del jugador" value="" /><br><br>
            <p><strong>Goles:</strong></p><input class="form-control" type="text" REQUIRED name="Goles" placeholder="Goles" value="" /><br><br>
            <input class="pad btn btn-success" type="submit" value="Aceptar" />
        </div>

//Y este es el php//

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?PHP
include("conexion.php");
 
	$Equipo = $_POST['Equipo'];
	$Nombre = $_POST['Nombre'];
	$Apellido = $_POST['Apellido'];
	$Goles = $_POST['Goles'];
 
	$query = "INSERT INTO goleadores(Equipo,Nombre,Apellido,Goles) VALUES('$Equipo','$Nombre','$Apellido','$Goles')";
	$resultado = $conexion->query($query);
 
	if($resultado){
		header("Location:goleadores.php");
	}
	else{
		echo "Fallo la operación";
	}
 
?>


y en el caso que tenga modificar, como quedaria el $query= UPDATE?
Desde ya muchisimas gracias !
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 xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por xve (6935 intervenciones) el 13/12/2016 08:00:10
Hola Lucas, por lo que veo, te falta añadir el id_eq1 en el insert, no?
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: 40
Ha aumentado su posición en 7 puestos en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por lucas (21 intervenciones) el 13/12/2016 13:28:36
Hola xve, gracias por la respuesta.
En que parte decis que falta el ideq1?
El tema es que los atributos "Nombre" "Apellido" "Goles" y "Equipo" son de la tabla goleadores, pero este ultimo "Equipo", no puedo guardar un nombre ya que guarda el id de un equipo que lo contiene la tabla posiciones
Yo creo que ahi esta el problema
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 xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por xve (6935 intervenciones) el 13/12/2016 15:22:09
Hola Lucas, según veo en tu imagen, tienes el campo id_eq1, que parece ser una clave foranea de la tabla posiciones, no? Si es así, tendrás que añadir dicho id_eq1 en el INSERT que realizas.
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: 40
Ha aumentado su posición en 7 puestos en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por lucas (21 intervenciones) el 13/12/2016 15:45:58
Hola xve, gracias por tu respuesta. Si, id_eq1 es una clave foranea. Como quedaria el INSERT con esa clave?
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 xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por xve (6935 intervenciones) el 13/12/2016 17:14:19
El problema es que tienes que saber que valor asignarle a ese id... como sabes que valor tiene que ir?
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: 40
Ha aumentado su posición en 7 puestos en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por lucas (21 intervenciones) el 13/12/2016 18:02:44
No, no se el valor. Como lo obtengo?
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: 40
Ha aumentado su posición en 7 puestos en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por lucas (21 intervenciones) el 13/12/2016 18:48:14
Tema solucionado gracias por todo!
aca la solucion.

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
// Create connection
$conexion = new mysqli($servername, $username, $password, $dbname);
 
$Equipo = $_POST['Equipo'];
$Nombre = $_POST['Nombre'];
$Apellido = $_POST['Apellido'];
$Goles = $_POST['Goles'];
 
// Check connection
if ($conexion->connect_error) {
die("Connection failed: " . $conexion->connect_error);
}
$sql = "SELECT * FROM posiciones where Equipo='" . $Equipo . "'";
$result = $conexion->query($sql);
if ($result->num_rows > 0) {
$fila = $result->fetch_assoc();
$id_eq1 = $fila['Id_eq'];
$query = "INSERT INTO goleadores(Id_eq,Nombre,Apellido,Goles) VALUES('$id_eq1','$Nombre','$Apellido','$Goles')";
$resultado = $conexion->query($query);
if($resultado){
header("Location:goleadores.php");
}
else{
echo "Fallo la operación";
}
}
$conexion->close();
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por xve (6935 intervenciones) el 13/12/2016 20:01:52
Gracias por comentarlo!!
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: 40
Ha aumentado su posición en 7 puestos en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por lucas (21 intervenciones) el 13/12/2016 21:38:34
Gracias a ustedes por la ayuda !
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 Federico
Val: 10
Ha aumentado su posición en 17 puestos en PHP (en relación al último mes)
Gráfica de PHP

Consulta para insertar y modificar datos

Publicado por Federico (4 intervenciones) el 13/12/2016 23:55:22
Hola, en primer lugar en tu insert tenes el campo Equipo en la tabla goleadores y en el diseño que mostras no esta.
Por eso no podes insertar y te debe devolver "fallo la operacion".

1
$query = "INSERT INTO goleadores(Equipo,Nombre,Apellido,Goles) VALUES('$Equipo','$Nombre','$Apellido','$Goles')"

Y el update debe quedar masomenos asi:

1
UPDATE goleadores SET Nombre='$Nombre', Apellido='$Apellido' WHERE id-x=id-x
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