Foros del Web » Programando para Internet » PHP »

Crear jornadas de una liga en PHP con número indeterminado de equipos

Estas en el tema de Crear jornadas de una liga en PHP con número indeterminado de equipos en el foro de PHP en Foros del Web. Hola amigos, hace un par de semanas empece a trabajar en una web que debía generar jornadas de liga con un número indeterminado de equipos. ...
  #1 (permalink)  
Antiguo 18/08/2011, 00:54
 
Fecha de Ingreso: mayo-2010
Mensajes: 5
Antigüedad: 14 años
Puntos: 1
De acuerdo Crear jornadas de una liga en PHP con número indeterminado de equipos

Hola amigos,
hace un par de semanas empece a trabajar en una web que debía generar jornadas de liga con un número indeterminado de equipos. Busque información sobre el tema pero no encontre mucho. Después de mucho buscar encontre algo en ASP que me sirvió de inspiración, adapte el script a PHP y aqui os lo dejo para los que tengais mi mismo problema.



Código:
<form method="post" action="funciones_liga.php">
Seleccionar n&uacute;meros de equipos: 
  <label for="num_equipos"></label>
  <input name="num_equipos" type="text" id="num_equipos" size="3" maxlength="2"><br /><br />
Nombre de la liga:  
    <input name="nombre_liga" type="text" id="nombre_liga"><br />
  <input type="submit" name="button" id="button" value="crear liga">
</form>
<?
$N = $_POST[num_equipos]; //ATENCIÓN!! "N" DEBE SER PAR! (2,4,8,12,20,...)

if ($N%2==0) {
	echo "Es par el número de equipos<br>";
} else {
	echo "El numero de equipos es impar<br>";
	$N = $N+1; // sumamos 1 al numero impar de equipos. A este equipo en un futuro lo podemos llamar descanso
}

//crea los grupos
for ($i = 0; $i<(($N-1)/2); $i++) {
//   g1.push([$i]);
   $g1[$i] = $i;
   //
//   g2.push([i]);
   $g2[$i] = $N-$i-1;
   }
//hace girar los grupos para el siguiente round
echo $_POST[nombre_liga]."<br>";
echo $_POST[num_equipos],"<br>";

for ($j = 0; $j<$N-1; $j++) {//j son los rounds

   //anuncia los grupos
echo "<table><tr><td><b>Jornada ".$j."</b></td></tr> ";
echo "<tr><td>";
$conta=0;
foreach ($g1 as $equipo1) {
    
	echo "Valor actual de EQUIPO1: ".$equipo1."<BR>";
 	echo "Valor actual de EQUIPO2: ".$g2[$conta]."<BR>";
// crear registro de la jornada
echo "INSERT INTO liga (id, nombre_liga, jornada, equipo1, equipo2) VALUES ('', '".$_POST[nombre_liga]."', '".$j."','".$equipo1."','".$g2[$conta]."')";
 
 //-----------
$conta=$conta+1;
echo "<br><br><br>"; 
}
echo "</td></tr><tr><td>";
echo "</td></tr>";
// Calculamos la siguiente jornada
    $temp1 = $g2[0];
    $temp2 = $g1[($N/2)-1];

   for ($k = 0; $k<$N/2; $k++) {
      if ($k == ($N/2)-1) {
         $g1[1] = $temp1;
         $g2[($N/2)-1] = $temp2;
      } else {
         $g1[($N/2)-1-$k] = $g1[($N/2)-1-$k-1];
         $g2[$k] = $g2[$k+1];
      }
   }//-------------------
echo "</table>";
}
?>

Espero que os sirva,
SALUDOS

Etiquetas: jornadas, liga
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:22.