Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/02/2008, 03:12
dolmenes
 
Fecha de Ingreso: febrero-2008
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
Re: ordenar y grabar posicion de los registros

Ante todo, gracias

Lo he probado de mil maneras y no he conseguido lo que quería. También es verdad que yo no controlo mucho.

Código PHP:
$con mysql_connect'host''usuario''clave' ); 
$db mysql_select_db'competicion' ); 

$consulta "SET @pos=0; SELECT id_puntuacion, campo1, campo2, @pos:=@pos+1 as puesto FROM puntuacion ORDER BY campo2 DESC"
$sql mysql_query$consulta ) or die ( mysql_error() ); 
¿Debo entender que ejecutando este código, se grabaría de forma automática en el campo "puesto" el puesto que ocupa cada línea del registro una vez ordenada por el "campo2" de mayor a menor? Lo hice con UPDATE también pero no me ha funcionado!!! En el campo "puesto" no se graba la posición de cada registro!!!

A lo más que he llegado es a esto (lo he visto en una página), pero no soy capaz de guardar el resultado del contador en el campo "puesto" de mi tabla "puntuacion":

Código PHP:
$con mysql_connect'host''usuario''clave' );
$db mysql_select_db'competicion' ); 

$consulta "SELECT * FROM puntuacion"
$sql mysql_query$consulta ) or die ( mysql_error() ); 
$contador 1
while ( 
$row mysql_fetch_array$sql ) ) 
{   
   echo 
$contador.". ".$row[puesto]=$contador."</br>"
   
$contador++; // incrementamos el contador en 1 unidad 


Saludos