Ver Mensaje Individual
  #4 (permalink)  
Antiguo 05/07/2010, 05:35
Vallu
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años
Puntos: 26
Respuesta: Ayuda con una tabla de posiciones de fútbol simple

Primer de todo crea una tabla como la que he creado. (mas o menos, pero que tenga los gf, gc, puntos.) Acostumbrate a poner en las tablas id numericos como primarios, y no nombres, siempre es mas comodo.

Código PHP:
$sql 'CREATE TABLE `posiciones_futbol` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nombre_equipo` VARCHAR( 50 ) NOT NULL ,
`posicion` INT( 2 ) NOT NULL ,
`puntos` INT( 3 ) NOT NULL ,
`gf` INT( 3 ) NOT NULL ,
`gc` INT( 3 ) NOT NULL
) ENGINE = MYISAM '
;

mysql_query$sql$conn ); 
Este trozo lo tenias tu, pero lo he modificado un poco.
Código PHP:
$qry mysql_query("SELECT * FROM partidos WHERE id_liga='0' "); 
  while (
$row mysql_fetch_array($qry)) 


        
$equipoA $row[id_local]; 
        
$equipoB $row[id_visita]; 
         
         
        if(
$row['GL'] > $row['GV']) {

            
$puntos[$equipoA] += 3
            
$puntos[$equipoB] += 0
             }

           

        elseif(
$row['GV'] > $row['GL']) {

            
$puntos[$equipoB] += 3
            
$puntos[$equipoA] += 0
}
     

       else{

            
$puntos[$equipoB] += 1
            
$puntos[$equipoA] += 1

        } 
sumaPuntos($puntos[$equipoA] , $puntos[$equipoB]); //funcion que suma los puntos obtenidos en el partido a la tabla

ordenaPosiciones(); 
en ordenaPosiciones seria algo asi (te lo digo de palabra)
Haces un ordenado de los puntos con:
Select * FROM posiciones_futbol ORDER BY puntos DESC;
Recorres el array y si encuentra que 2 tienen la misma puntuacion pues vas a tu tabla y comparas los goles de cada uno, de ahi pillas el que tiene mas goles y le dices que ese este por delante del otro.

Esa es una sentencia sql complicada, pero es la que necesitas. No se si me he explicado bien... Igualmente supongo que hay maneras mas sencillas de hacerlo, pero no me viene ninguna ahora.

Última edición por Vallu; 05/07/2010 a las 05:44