Fyodorovich, seria en lenguaje PHP y la base de datos eb mysql, e logrado hacerlo pero no se si sera la forma correcta me refiero a algo mas optimizado, te describo lo que hise.
primero compare los puntos que tiene el usuario con un select en la tabla de de puntos, con nun menor que, eso me devolvera todos los registros menores a los puntos del usuario, luego guarde en un array los registros y con max(array) obtube el registro mayo solo uno, con ese numero vuelvo a hacer la consulta pero dando que el campo puntos sea igual ala variable que saque de max array, eso debera devolverme un solo registro que es el nivel que corresponderia. dejo el codigo
Código:
require_once('../Connections/foro.php');
mysql_select_db($database_foro, $foro);
$puntos = 6300;
$sql2=mysql_query("SELECT * FROM categorias WHERE rep_puntos<= $puntos",$foro);
$puntos_array = array();
while($row = mysql_fetch_array($sql2)){
$puntos_array[]= $row['rep_puntos'];
}
$puntos_consult = max($puntos_array);
$sql3=mysql_query("SELECT * FROM categorias WHERE rep_puntos = $puntos_consult",$foro);
$puntos_rep = array();
while($row = mysql_fetch_array($sql3)){
$puntos_rep[] = $row['titulo'];
$puntos_rep[] = $row['nivel'];
$puntos_rep[] = $row['rep_puntos'];
$puntos_rep[] = $row['descripcion'];
$puntos_rep[] = "<img src='files/miniaturas/".$row['imagen']."' /><br />";
}
$reputatio_info =
"<ul style='float:left;margin-top:0'>
<li>".$puntos_rep[0]."</li>
<li>".$puntos_rep[1]."</li>
<li>".$puntos."</li>
<li>".$puntos_rep[3]."</li>
<li>".$puntos_rep[4]."</li>
</ul>";
la variable $puntos sera la que varie de acuerdo al usuario
No soy experto en php, pero eso que hise me funciona, no se si esta optimizado, no se si es la forma correcta y tampoco se si hagra una forma mas sencilla.