contar usuarios activos en php

Laulaurys
30 de Agosto del 2005
Hola: mi consulta es que necesito saber la gente que esta navegando en la pagina para limitarla a solo 5 personas por vez.
Estuve leyendo e intentando algunas cosas pero no me salieron, ahora vi un ejemplo con sesion register pero no entiendo como implementar el sesion register, es decir, cuando ingreso usuario y contraseña tengo que mandar un campo oculto con un dato que luego se lo paso al sesion register?
Por favor espero respuestas, gracias!

omarogmx
30 de Agosto del 2005
Hola amiguita:
Tal vez esto te ayude o te de una idea,Te Pongo dos scripts y uno mas para linux....

1 Con este script yo registro las direcciones ip de los que se conectan a la pagina y lo puedes grabar en una base de datos, Obviamente debes de crear una base de datos con el nombre DBusuariosip con la tabla direccionesip NADA MAS. Y si quieres agragarle un campo datetime para saber a que hora estan ingresando pues estaria mucho mejor.
Ya que si te quieres ver mas picuda puedes ligar esos registros con iptables usando sudo y restringir por script el acceso, pero con sudo es bajo tu responsabilidad por que te pueden fastidiar remotamente:

<?

if ($_SERVER) {

if ( $_SERVER[HTTP_X_FORWARDED_FOR] ) {

$realip = $_SERVER["HTTP_X_FORWARDED_FOR"];

} elseif ( $_SERVER["HTTP_CLIENT_IP"] ) {

$realip = $_SERVER["HTTP_CLIENT_IP"];

} else {

$realip = $_SERVER["REMOTE_ADDR"];

}

}/*Fin de if*/





else {

if ( getenv( "HTTP_X_FORWARDED_FOR" ) ) {

$realip = getenv( "HTTP_X_FORWARDED_FOR" );

} elseif ( getenv( "HTTP_CLIENT_IP" ) ) {

$realip = getenv( "HTTP_CLIENT_IP" );

} else {

$realip = getenv( "REMOTE_ADDR" );

}

}/*Fin de else*/

?>





<?

$var1=mysql_connect("ip_servidor","usuario","password");

$var2=mysql_select_db("DBusuariosip",$var1);

$var3=mysql_query("insert into dbo.direccionesip(ips)values('$realip')");

echo $realip;

?>







2 SI SOLO NECESITAS VER QUIEN IP O QUE USUARIO ESTA CONECTADO AGREGA ESTE SCRIPT A TU PAGINA VISITADA:

<?
if ($_SERVER) {
if ( $_SERVER[HTTP_X_FORWARDED_FOR] ) {
$realip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} elseif ( $_SERVER["HTTP_CLIENT_IP"] ) {
$realip = $_SERVER["HTTP_CLIENT_IP"];
} else {
$realip = $_SERVER["REMOTE_ADDR"];
}
}/*Fin de if*/


else {
if ( getenv( "HTTP_X_FORWARDED_FOR" ) ) {
$realip = getenv( "HTTP_X_FORWARDED_FOR" );
} elseif ( getenv( "HTTP_CLIENT_IP" ) ) {
$realip = getenv( "HTTP_CLIENT_IP" );
} else {
$realip = getenv( "REMOTE_ADDR" );
}
}/*Fin de else*/

echo "$realip";
?>


3 Si quieres monitorear quien se conecta:
comando less -f /var/log/messages