Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/12/2007, 04:19
retrievr2005
 
Fecha de Ingreso: diciembre-2007
Mensajes: 13
Antigüedad: 16 años, 4 meses
Puntos: 0
Actualizar múltiples registros en MySQL

Buenas a todos los foristas de Foros del Web, con frecuencia he visto este foro, pese a que por primera vez me registro, y casi siempre consigo solución a los problemas en PHP que tengo, no soy novato en esto, pero tampoco soy un gran experto, en realidad he aprendido poco a poco leyendo varios posts de este foro, y leyendo otros sitios. Me dedico a escribir en esta ocasión, porque por primera vez no he conseguido una verdadera solución al rollo que tengo, y se trata de los siguiente:

Estoy creando un script para una página de béisbol que dirijo, y hasta ahora me ha ido bien, pero tengo una duda sobre como actualizar múltiples registros de mi base de datos. Creé una tabla que se llama "calendario", ahí almaceno toda la información de los juegos, la fecha, nombre del equipo visitante, nombre del equipo home club, número de carreras del equipo visitante, número de carreras del equipo home club, estadio en donde se llevará a cabo el juego y la hora del mismo.

Ahora bien, estoy creando una página en donde yo vea los datos del juego del día, eso ya lo hice sin problemas, con el siguiente código:

resultados.php

Cita:
<?php
$cn=mysql_connect("localhost","user","clave")or die("Error conexion MySQL");
$db=mysql_select_db("tabla",$cn)or die("No existe BD");
$query=mysql_query("SELECT 1 FROM calendario WHERE 1 AND `date` LIKE CURDATE()")or die("Error consulta");
$n=mysql_num_rows($query);
if($n)
{
while($campo=mysql_fetch_array($query))
{
echo "<FORM METHOD=POST ACTION='graba.php'>";
echo "---------------------------";
echo "<br>Visitante: <INPUT TYPE='hidden' NAME='visitante' VALUE='".$campo['visitante']."'>".$campo['visitante'];
echo "<br>Carreras Visitante: <INPUT TYPE='text' NAME='carrerasv' VALUE='".$campo['carrerasv']."'>";
echo "<br>Home Club: <INPUT TYPE='hidden' NAME='homeclub' VALUE='".$campo['homeclub']."'>".$campo['homeclub'];
echo "<br>Carreras Home Club: <INPUT TYPE='text' NAME='carrerashc' VALUE='".$campo['carrerashc']."'>";
echo "<br><INPUT TYPE='submit' value='Grabar'> <br>";
echo "---------------------------<br>";
echo "</FORM>";
}
}
else
{

}
?>
Ahora, como ven, los datos del equipo Home Club y Visitante no me interesa modificarlos, por eso están en hidden, lo que quiero, es cuando termine cada juego insertar en cada uno de ellos los resultados en los campos "carrerasv" y "carrerashc". Pero resulta, que cuando monto la página en el servidor me aparecen todos los juegos del día, y eso está bien, eso es lo que quiero, pero cuando inserto los resultados del juego 1, me pone el resultado de ese juego en todos los juegos del día, a continuación el script del archivo que envía la info a la base de datos:

graba.php

Cita:
<?php
$carrerasv=$_POST['carrerasv'];
$carrerashc=$_POST['carrerashc'];
//////////////
$cn=mysql_connect("localhost","user","clave")or die("Error conexion MySQL");
$db=mysql_select_db("tabla",$cn)or die("No existe BD");
$query=mysql_query("UPDATE calendario SET carrerasv='$carrerasv',carrerashc='$carrerashc' WHERE 1 AND `date` LIKE CURDATE()'");

if($query)
{
echo "Actualizacion OK ! ";
}
else
{
echo " No hubo actualizacion";
}
?>
En fin, reitero por si a caso no aclaré bien. Me aparece la página con todos los juegos del día, pero cuando inserto los resultados del juego 1 y presiona GRABAR, me envía ese resultado a todos los juegos que se llevaron a cabo ese día, y lo que quiero es que separe, los resultados del juego 1 para el juego 1, los resultados del juego 2 para el juego 2, etc, etc...

Les agradecería que por favor me ayudaran, de estar en sus manos la respuesta.

Muchas Gracias
retrievr2005.

PD: A los moderadores del foro, un detalle, a la hora de registrarme aparece que la hora en Venezuela es GMT -04:00 y la semana pasada fue cambiada a GMT -04:30, si es de su interés bajar el parche correspondiente que actualiza el foro... Es solo un consejo jejejeje.