Foros del Web » Programando para Internet » PHP »

duda con script de ultimos visitantes

Estas en el tema de duda con script de ultimos visitantes en el foro de PHP en Foros del Web. hola tengo una pregunta con un script ke muestra los ultimos 20 usuarios ke visitaron un perfil, lo ke deseo es ke al llegar el ...
  #1 (permalink)  
Antiguo 26/05/2005, 16:59
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 12 años, 10 meses
Puntos: 4
duda con script de ultimos visitantes

hola tengo una pregunta con un script ke muestra los ultimos 20 usuarios ke visitaron un perfil, lo ke deseo es ke al llegar el visitante n° 21 se borre el primer visitante y los siguientes suban un nivel de manera ke sian apareciendo 20 usuarios y asi segun vayan entrando visitantes el el perfil determinado, no se si me deje entender, aki les dejo el script ke hice pero solo muestra 20 usuarios, ke es lo ke debo añadir para ke el resultado sea como lo ke yo necesito ?

Código PHP:
<?
$query 
mysql_query("select id from visitas WHERE iduser='$id' AND idvisitante='$_SESSION[idusuario]'");
    
if(
$existe mysql_fetch_object($query)){
                
mysql_query("UPDATE visitas set fecha='$fecha' WHERE iduser='$id' AND idvisitante='$_SESSION[idusuario]'");
                
}
                
else{
                
if(
$_SESSION[idusuario] == $id){
}
                
else {
                
                
mysql_query("INSERT INTO visitas (iduser,idvisitante,fecha) VALUES ('$id','$_SESSION[idusuario]','$fecha')");
}
}
                
$mostrar mysql_query("select visitas.idvisitante,users.nick FROM visitas,users WHERE visitas.iduser='$id' AND visitas.idvisitante=users.id ORDER BY visitas.fecha desc LIMIT 0,20");
while(
$datos mysql_fetch_array($mostrar)) {
                
echo 
"&nbsp;<img src='item.gif' border='0'>&nbsp;<a class='link3' href='perfil.php?id=$datos[idvisitante]'><strong>$datos[nick]</strong></a><br>";
                
}
?>
un saludo
  #2 (permalink)  
Antiguo 30/05/2005, 05:27
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
... te respondo de rápido y sin ver tu código (disculpa)...

Mira... para tratar el problema hay que ver que necesitas un dato de referencia para poder borrar... ignoro si puedas hacer algo como DELETE .... LIMIT 0, 20 , quiero creer en el foro de Base de Datos podrán ayudarte mejor con "esta duda"... pero... lo que se podría hacer con PHP es esto:
- Insertar tu nueva/ultima visita
- Resuperar su id con la función mysql_insert_id(): www.php.net/mysql_insert_id
- Borrar todos los registros que tengan una diferencia mayor de 20 respecto a esa id:
Código PHP:
mysql_query("INSERT INTO visitas...");

$idmysql_insert_id();
mysql_query("DELETE FROM visitas WHERE id<=($id-20)"); 
.... ¿no siempre será 1 solo registro que cumpla esa condición???.. entonces igual podrías borrar el registro con la id más baja, para ello puedes ocupar la función MIN() de SQL... Habrá que pensar en las posibilidades... pero esto que te digo estoy seguro que serviría...

Ojo: Entoy pensando en que la id es un valor autoincrementable...

Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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




La zona horaria es GMT -6. Ahora son las 18:56.