ciao volevo dire i numeri e lettere casuali tipo i codici di conferma dei forum
-----------------------------------------------------------------------
comunque avrei un problema con uno cript sarebbe un contatore user online cioe dice il numero di utenti che sono collegati e l ip vi spiego in locale funziona maonline no lo provato su due tipologie di server sia linux che windows su linux mi da un numero di utenti sbagliato e la data mi da 0000:00:00 e l ip non si vede
su windows mi da tutto giusto tranne l ip che mi da unkown perche come risolvere il problema mi potreste aiutare?
posto lo script vorrei che funzionasse su tutti i sistemi windows e linux premetto che verra visto non dal php ma da flash
grazie confido in un vostro aiuto
Codice PHP:
<?php
/*
tabella 'useronline'
--------------------
campi: time (datetime)
ip (varchar 15 unique)
url (varchar 255)
*/
$dbhost = "localhost";
$dbuser = "chiolo";
$dbpass = "maurizio";
$dbname = "rocco";
$timeoutseconds = 300;
if (getenv("HTTP_CLIENT_IP")) {
$ip = getenv("HTTP_CLIENT_IP");
} else if (getenv("HTTP_X_FORWARDED_FOR")) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
} else if (getenv('REMOTE_ADDR')) {
$ip = getenv('REMOTE_ADDR');
} else {
$ip = "Unknown";
}
//Mi connetto al database
$db = @mysql_connect($dbhost,$dbuser,$dbpass)
or die("&error=[b]Database error:[/b] Cannot establish connection.");
//Seleziono il database
@mysql_select_db($dbname,$db)
or die("&error=[b]Database error:[/b] Cannot select database.");
//Cancello i "vecchi" visitatori
@mysql_query("DELETE FROM useronline WHERE (time + INTERVAL 5 MINUTE) < NOW()")
or die("&error=[b]Database error:[/b] Cannot insert new data.");
//Inserisco nuovi visitatori
@mysql_query("REPLACE INTO useronline (time,ip,url) VALUES (NOW(),'$ip','".$_SERVER['PHP_SELF']."')")
or die("&error=[b]Database error:[/b] Cannot insert new data.");
$result = mysql_query("SELECT time,ip,url FROM useronline ORDER BY time DESC");
while ($row = mysql_fetch_assoc($result)) {
echo "&adress=".$row['ip']."&tempo=".$row['time'];
}
echo "&usersOnLine=".mysql_num_rows(mysql_query("SELECT ip FROM useronline"));
?>