Foros del Web » Programando para Internet » PHP »

como insertar notas en tabla relacionadas

Estas en el tema de como insertar notas en tabla relacionadas en el foro de PHP en Foros del Web. lo que pasa es que tengo relacionada dos tablas tabla 1 alumnos id nombre apellido grado tabla 2 notas idnotas nota1 nota2 nota_final inserto los ...
  #1 (permalink)  
Antiguo 08/07/2012, 15:32
Avatar de trofserpiente  
Fecha de Ingreso: julio-2012
Ubicación: Lerida
Mensajes: 220
Antigüedad: 11 años, 9 meses
Puntos: 1
Exclamación como insertar notas en tabla relacionadas

lo que pasa es que tengo relacionada dos tablas

tabla 1 alumnos
id
nombre
apellido
grado

tabla 2 notas
idnotas
nota1
nota2
nota_final


inserto los datos de la primera tabla y va todo bien,pero cuando inserto las notas no inserta pero no me da ningún error entonces quisiera saber si es que tengo mal el código o que le hace falta en la sentencia entonces le dejo todo el código(php y formulario) haber si me ayudan. estoy trabajando mi base de datos en phpmyadmin



Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<?php
$conexA
mysql_connect("localhost","root","")//conexión al servidor
    
or die("No se pudo realizar la conexion");
$conexB=mysql_select_db("tutoriales",$conexA)//elegir la base de datos
    
or die("ERROR con la base de datos");

if(isset(
$_POST['n1'])){
   
   
$n1=$_POST['n1'];
   
$n2=$_POST['n2'];
   
$alum=$_POST['idalum'];
   
  
mysql_query("INSERT INTO     notas(nota_1,nota_2,id)values('".$n1."','".$n2."','".$alum."')" or die or die(mysql_error()));
    
    }

?>

<body>

<form action="relacion.php" method="post">

<label>nota1</label>
<input type="text" name="n1"/>
<label>nota2</label>
<input type="text" name="n2"/>
<label>idalum</label>
<select name="idalum" size="1">
 <?php

  $consult
=mysql_query("SELECT id  FROM alumnos",$conexA);
  for(
$i=0$i<$consult$i++){
      
$fila=mysql_fetch_array($consult);
      echo 
'<option>'.$fila['id'].'</option>' ;
      }
   
?>

</select>
<input type="submit" value="enviar"/>
</form>
</body>
</html>
__________________
Luis Alfonso Cruz Valbuena
[email protected]
  #2 (permalink)  
Antiguo 08/07/2012, 17:10
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: como insertar notas en tabla relacionadas

En tu consulta tienes un campo ID que no veo que pusieras en la "estructura" de tu tabla. Otra cosa es que no te va a mostrar el error por esto:
Código PHP:
Ver original
  1. or die or die(mysql_error()));
Solo 1 or die
  #3 (permalink)  
Antiguo 08/07/2012, 18:03
Avatar de trofserpiente  
Fecha de Ingreso: julio-2012
Ubicación: Lerida
Mensajes: 220
Antigüedad: 11 años, 9 meses
Puntos: 1
Exclamación Respuesta: como insertar notas en tabla relacionadas

Cita:
Iniciado por Ronruby Ver Mensaje
En tu consulta tienes un campo ID que no veo que pusieras en la "estructura" de tu tabla. Otra cosa es que no te va a mostrar el error por esto:
Código PHP:
Ver original
  1. or die or die(mysql_error()));
Solo 1 or die
gracias amigo ya arregle lo que me dijo pero no me muestra errores, el id que hace falta es el de idnotas y no lo pongo por que es autoincrementable pero sigue sin insertar .

espero que tengas mas posibilidades de ayudarme en verdad lo necesito,o si conoces a alguien que me ayude pon me en contacto
__________________
Luis Alfonso Cruz Valbuena
[email protected]
  #4 (permalink)  
Antiguo 08/07/2012, 18:16
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: como insertar notas en tabla relacionadas

Me refiero a esto:
INSERT INTO notas(nota_1,nota_2,id)

Segun dices tu tabla notas tiene estos campos:
idnotas
nota1
nota2
nota_final

No hay ninguno que se llame solamente "id" (no idnotas)

Muestrame como esta el codigo ahora mismo.
  #5 (permalink)  
Antiguo 08/07/2012, 18:33
Avatar de trofserpiente  
Fecha de Ingreso: julio-2012
Ubicación: Lerida
Mensajes: 220
Antigüedad: 11 años, 9 meses
Puntos: 1
Exclamación Respuesta: como insertar notas en tabla relacionadas

Cita:
Iniciado por Ronruby Ver Mensaje
Me refiero a esto:
INSERT INTO notas(nota_1,nota_2,id)

Segun dices tu tabla notas tiene estos campos:
idnotas
nota1
nota2
nota_final

No hay ninguno que se llame solamente "id" (no idnotas)

Muestrame como esta el codigo ahora mismo.
es que el id que esta es el de alumnos por que las tablas están relacionadas

alumnos--|-----< notas

por eso esta id y el campo de notas final no la pongo por que lo calculo con los otros campos

oja la me pueda seguir ayudando
__________________
Luis Alfonso Cruz Valbuena
[email protected]
  #6 (permalink)  
Antiguo 08/07/2012, 18:55
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: como insertar notas en tabla relacionadas

Si las tablas estan relacionadas, debes de tener un campo id_alumno (o como le quieras poner) en tu tabla de notas.

Asi como lo tienes, si la tabla notas no tiene un campo simplemente llamado "id", no funcionara. No le puedes decir que mágicamente ese campo que estas poniendo ahí esta en la otra tabla. Si no tienes un FK, el diseño de la base de datos esta mal.
  #7 (permalink)  
Antiguo 08/07/2012, 19:11
Avatar de trofserpiente  
Fecha de Ingreso: julio-2012
Ubicación: Lerida
Mensajes: 220
Antigüedad: 11 años, 9 meses
Puntos: 1
Exclamación Respuesta: como insertar notas en tabla relacionadas

Cita:
Iniciado por Ronruby Ver Mensaje
Si las tablas estan relacionadas, debes de tener un campo id_alumno (o como le quieras poner) en tu tabla de notas.

Asi como lo tienes, si la tabla notas no tiene un campo simplemente llamado "id", no funcionara. No le puedes decir que mágicamente ese campo que estas poniendo ahí esta en la otra tabla. Si no tienes un FK, el diseño de la base de datos esta mal.
amigo tiene toda la razón pero eso ya lo tengo echo si no que se paso escribirlo y tiene toda la razón en no poderme ayudar,no hay ninguna oportunidad para hacer una videoconferencia y mostrarle lo que e echo haber si me puede colaborar
__________________
Luis Alfonso Cruz Valbuena
[email protected]
  #8 (permalink)  
Antiguo 08/07/2012, 19:17
Avatar de patriciomase  
Fecha de Ingreso: abril-2012
Ubicación: Mar del Plata
Mensajes: 323
Antigüedad: 12 años
Puntos: 34
Respuesta: como insertar notas en tabla relacionadas

hiciste otro post exactamente igual donde te contesté y si tenias la referencia que te dice Ronruby. Solo que no la estabas insertando. Volvé a como estaba antes (en el otro post) y donde escribias 'id' pone id_alumno. Y tenes que insertar VOS un valor que esté en la tabla alumnos en la columna id. No se puede hacer un insert a dos tablas o eso que tratas de poner no existe
  #9 (permalink)  
Antiguo 08/07/2012, 19:30
Avatar de trofserpiente  
Fecha de Ingreso: julio-2012
Ubicación: Lerida
Mensajes: 220
Antigüedad: 11 años, 9 meses
Puntos: 1
Exclamación Respuesta: como insertar notas en tabla relacionadas

Cita:
Iniciado por patriciomase Ver Mensaje
hiciste otro post exactamente igual donde te contesté y si tenias la referencia que te dice Ronruby. Solo que no la estabas insertando. Volvé a como estaba antes (en el otro post) y donde escribias 'id' pone id_alumno. Y tenes que insertar VOS un valor que esté en la tabla alumnos en la columna id. No se puede hacer un insert a dos tablas o eso que tratas de poner no existe
gracias pero es que el id es de la tabla alumno y como esta reaccionado

alumnos--|-------<notas
id.......................idnotas
..........................id

es algo raro por que tengo solo 2 reguistros en la tabla alumnos el primero esta con el id 1 y el segundo con el id y al insertarlo en alumnos coloco alguno de los dos pero no insertan
__________________
Luis Alfonso Cruz Valbuena
[email protected]

Etiquetas: formulario, html, mysql, notas, relacionadas, sql, tabla
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 20:51.