Duda sobre PHP

ethernal-

Estoy programando mi primera web en PHP para mi squad de BF, y pretendo lo siguiente:

En la base de datos tengo una tabla MIEMBROS, en la que cada miembro tiene un campo "partidos jugados", mientras que por otro lado tengo la tabla PARTIDOS.

Lo suyo seria que cada vez que haga un formulario para agregar un partido a la bbdd, pueda elegir qué miembros han jugado el partido, y sumarle automáticamente 1 al "partidos jugados" de dichos miembros.

Agradeceria ideas de como hacerlo (no que me pongais el código en si, sino algo por encima).

erdanblo

A ver si no me lio...

al meter el partido en la base de datos, haces diferentes campos para cada jugador, es decir:

tabla PARTIDOS
campo ID
campo RIVAL
campo ... (lo que sea)
campo jugador1
campo jugador2
campo jugador3
campo ...
campo jugadorN

Entonces, cuando metieses el partido, con un script compruebas cada jugador y haces la comprobación en la base de datos de cada jugador el número de partidos que tiene y ya solo queda sumarle ($partidos_totales = "$row[partidos_jugados] + 1"; ) y actualizar el campo.

A mi a vote pronto no se me ocurre otra cosa.

Pd. No se como va en BF, pero... ¿los numeros de jugadores son fijos o varian según partido/mapa?

ethernal-

Pues suelen variar, pero eso lo puedo arreglar con otro mini formulario antes no ?

erdanblo

Pués eso estaba dudado yo jeje, es que creia recordad que en BF variaba, ahi ya me coges... mal.

De todos modos como he intentado explicar (si es que lo has entendido) es bastante chapucero, a ver si algún gurú de aqui te explica mejor.

La posible solución que yo le daria, seria añadir en la tabla de partidos jugadores_totales o algo y metes el número total, y la hora de hacer las comprobaciones pués tomas en cuenta eso o algo (me parece que lo estoy liando xDDD)...

ethernal-

Lo q me dijiste es mediante 8 campos de texto y luego comparando en la BBDD no ?

erdanblo

Si (creo...)

Abreu

Pongamos que tienes las tablas partido y jugador. Como los partidos tienen varios jugadores (y viceversa) tendras que crear una tabla mas llamada por ejemplo "jugador_partido" en la que meteras la ID del jugador y la ID del partido.

Ejemplo

PARTIDO
@ id

  • fecha
  • resultado
  • ...

JUGADOR
@ id

  • nick
  • edad
  • ...

JUGADOR_PARTIDO
@ id_jugador
@ id_partido

Cuando crees un PARTIDO deberas tambien crear un JUGADOR_PARTIDO por cada uno que haya jugado.

Tambien puedes hacer la "chapuza" de añadir un campo a PARTIDO para cada jugador pero de la forma que te he dicho no hay limite de jugadores.

Luego para contar los partidos de un jugador puedes hacer:

SELECT COUNT(*) FROM JUGADOR_PARTIDO WHERE id_jugador=$id_del_jugador

ethernal-

Creo q lo he entendido, a ver:

Supongamos que se juega un 4on4. Segun ese sistema se crearian 4 registros en la tabla JUGADOR_PARTIDO con la misma id_partido y la id de cada jugador no ?

Y como hago para crear 4 registros a la vez ? :s

Sé que soy cansino, pero es que quiero aprender :P

Abreu

Yo tengo algo parecido para las posibles respuestas en las encuestas del foro. Lo que hago es guardar el campo del formulario en un array. Asi:

< input type='text' name='polloption[]'>

Lo que hago con PHP es imprimir un input por cada valor guardado en polloption, MAS UNO vacio que cada vez que lo rellenas se recarga el formulario para que siempre haya uno vacio.

Usuarios habituales

  • Abreu
  • ethernal-
  • erdanblo