sevenjeak Semidio


Registrato: 04/02/08 22:05 Messaggi: 308 Residenza: Roma
|
Inviato: 09 Ott 2009 17:09 Oggetto: [PHP/XML] aiuto contatore utenti on-line |
|
|
Salve,
Ho creato un contatore utenti on-lin per il mio sito, il contatore memorizza l'ip dell'utente e il suo timestamp, fino ad ora ho scritto questo codice:
Codice: |
<?php
$filename = "online.xml";
$IP = $_SERVER['REMOTE_ADDR'];
$time = time();
$limit = time() - 120;
// Lettura archivio xml
$dom = new DOMdocument();
$dom->load($filename);
$root = $dom->documentElement;
$elements = $root->getElementsByTagName('user');
$trovato = 0;
foreach ($elements as $ln)
{
// Estrazione nodo tag <address>
$value_address = $ln->getElementsByTagName('address');
$value_address = $value_address->item(0)->nodeValue;
// Estrazione nodo tag <timestamp>
$value_timestamp = $ln->getElementsByTagName('timestamp');
$value_timestamp = $value_timestamp->item(0)->nodeValue;
if ($IP == $value_address && $value_timestamp != $limit)
$trovato = 1;
}
$doc = new DOMdocument();
$doc->load($filename);
$doc->formatOutput = true;
$root = $doc->documentElement;
if ($trovato == 0) {
// Creazione tag <user>
$user = $doc->createElement('user');
$user = $root->appendChild($user);
// Creazione tag <address>
$address = $doc->createElement('address');
$address = $user->appendChild($address);
// Creazione tag <timestamp>
$timestamp = $doc->createElement('timestamp');
$timestamp = $user->appendChild($timestamp);
// Inizializzazione nodo tag <address>
$address_txt = $doc->createTextNode($IP);
$address_txt = $address->appendChild($address_txt);
// Inizializzazione nodo tag <timestamp>
$timestamp_txt = $doc->createTextNode($time);
$timestamp_txt = $timestamp->appendChild($timestamp_txt);
$doc->save($filename);
}
?>
|
Il problema e dovrei inserire un codice che mi permette di aggiornare il timestamp e di eliminare il record dell'utente quanto il timestamp e uguale alla variabile $limit.
come potrei fare? |
|