Foros del Web » Programando para Internet » PHP »

Insertar datos en un form dependiendo del nombre del input

Estas en el tema de Insertar datos en un form dependiendo del nombre del input en el foro de PHP en Foros del Web. hola. os explico: quiero hacer estadisticas de jugadores del club. en el form de entrada hay varios campos: 1 punto, 2 puntos, 4 punto, rebote ...
  #1 (permalink)  
Antiguo 15/08/2006, 14:49
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 15 años, 10 meses
Puntos: 0
Pregunta Insertar datos en un form dependiendo del nombre del input

hola. os explico: quiero hacer estadisticas de jugadores del club. en el form de entrada hay varios campos: 1 punto, 2 puntos, 4 punto, rebote ofensivos... los nombres son 1pt_"el id que el jugador tiene en la BD". El form de entrada esta conectada a la BD y me imprimie todos los jugadores de esa forma
Ahora bien, a la hora de programar el codigo de update de la BD veo que no sé como hacer que cada 1tp se meta en la columna con ese mismo nombre, etc...

me explico? seria algo tipo
mysql_query("UPDATE jugadores SET 1pt='$1pt_(el id)' WHERE id='$id'",$link);

bueno, logicamente no es eso pero ya me vais cogiendo. habvia pensadso hacerlo con un bucle para todos los campos que reciba el form pero... como? como puedo obtener el nombre de los campos que envio? solo sé obtener el valor...

gracias, muchas gracias
  #2 (permalink)  
Antiguo 15/08/2006, 14:55
Avatar de DarkXNightmare  
Fecha de Ingreso: agosto-2005
Ubicación: Somewhere Over The Rainbo
Mensajes: 181
Antigüedad: 12 años, 4 meses
Puntos: 0
Mira como lo pinta PHP y saca tus conclusiones de porque no quiere ejecutar el UPDATE...
Código PHP:
$1pt "algo";
$pt "algo"
PHP no acepta nombres de varialbes que comiencen con NUMEROS... primero caracteres y luego numeros.

Espero te sirva de ayuda ;D.

Atte... DarkXNightmare ;D.
__________________
Cambiando mi Web... sean pacientes :P
  #3 (permalink)  
Antiguo 15/08/2006, 15:23
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Lo ideal es que trabajes tus "input" en forma de "Array" .. tal cual muestra esta FAQ:

http://www.forosdelweb.com/showthrea...710#post518710

Si te fijas .. al trabajar como un "array" en ella propagas sus datos y los lees fácilmente sin tener que recurrir a técnicas como "variable variables" o cosas similares. Es màs "natural" leer el código y ejecutarlo así.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 16/08/2006, 07:19
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 15 años, 10 meses
Puntos: 0
Entiendo... Lo prové y me va fenomenal, gracias Cluster. Pero sigo sin saber como conseguir el id del jugador para meterlo en la BD.
Ahora tengo los nombres de los inputs como rebotes[id del jugador]. Así me llega un array con los indices que son los id de los jugadores. ahora queria hacer un foreach y un update dentro de ese bucle pero no se como poner el "...WHERE id=id del jugador"

Me explico? Como lo harias tu? Crees que lo hago mal? Gracias por la ayuda
  #5 (permalink)  
Antiguo 16/08/2006, 09:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
No .. no es así ..

Sería,:

Un array en un campo oculto para porpagar el ID del jugador:
Código PHP:
<input type="hidden" name="id_jugador" value="<? echo $id_jugador ?>">
Y otro/s arrays para tus datos asociados .. como esos "rebotes" o lo que sea:
Código PHP:
<input type="type" name="rebotes[]"
Y luego en PHP los obtienes con un bucle for() usando el mismo indice para los diferentes arrays en "paralelo"
Código PHP:
for ($x=0$x<=count($_POST['id_jugador']; $x++){
   echo 
$_POST['id_jugador'][$x]." -- > ".$_POST['rebotes'][$x]."<br>";

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 16/08/2006, 09:20
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 15 años, 10 meses
Puntos: 0
Entiendo... Mientras esperaba tu respuesta he intentado hacer algo y me funciona. He hecho un array oculto como tu me has dicho pero despues no uso arrays para los demas campos sino que utilizo lo que te habia dicho antes (rebotes_id del jugador) y lo imprimo así:

Cita:
foreach($_POST['jugador'] as $id){
echo $id.'-->'.$_POST['rebotes_'.$id].'<br>';
}
Aunque esto funciona, crees que no es conveniente hacerlo asi? Pq? Bueno, de todas formas muchas gracias, ahora tengo dos formas... provaré de programar con ambas, a ver cual es más fácil.
Saludos
  #7 (permalink)  
Antiguo 16/08/2006, 09:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por splig Ver Mensaje
Entiendo... Mientras esperaba tu respuesta he intentado hacer algo y me funciona. He hecho un array oculto como tu me has dicho pero despues no uso arrays para los demas campos sino que utilizo lo que te habia dicho antes (rebotes_id del jugador) y lo imprimo así:



Aunque esto funciona, crees que no es conveniente hacerlo asi? Pq? Bueno, de todas formas muchas gracias, ahora tengo dos formas... provaré de programar con ambas, a ver cual es más fácil.
Saludos
A mi punto de vista es más "ordenado" y facil de entender usar arrays "paralelos" ... puedes crear un sistema más "extendible" sencillamente (creando nuevos arrays).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 16/08/2006, 14:14
 
Fecha de Ingreso: enero-2002
Mensajes: 265
Antigüedad: 15 años, 10 meses
Puntos: 0
ok muchas gracias
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 21:41.