Ultimele IP-uri de logare

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
Stefan
Mesaje: 97

Ultimele IP-uri de logare

Salut, cum as putea afla ultimele 5 ip-uri de logare a unui utilizator? M-am gandit cum as putea face, dar nu este prea eficient.. Imi poti sugera te rog o idee?

MarPlo
Salut
Poti face asa:
1. In tabelul cu utilizatorii din baza de date creezi o coloana "ips" de tip " VARCHAR DEFAULT '[]' ".
- In aceasta coloana se vor retine ip-urile utilizatorului, in format JSON.
2. Cand utilizatorul se logheaza preiei datele si din coloana "ips", le transformi intr-un array in php, adaugi la inceput ip-ul curent si elimini valorile duplicate:

Cod: Selectaţi tot

$ips = json_decode($row['ips'], true);
array_unshift($ips, $_SERVER['REMOTE_ADDR']);
$ips = array_unique($ips);
3. Faci update in coloana "ips" (la id-ul user-ului) cu array-ul rezultat, in format JSON:

Cod: Selectaţi tot

$sql ="UPDATE table SET ips='".json_encode($ips)."' WHERE id=$id_user";
4. Retii primele 5 ip-uri din $ips si le afisezi:

Cod: Selectaţi tot

$ips = array_slice($ips, 0, 5);
echo implode('<br>', $ips);

Subiecte similare