Salut
Nu am un astfel de cod facut, si nu exista o astfel de functie. Ci trebuie sa faci un script care inregistreaza intr-o baza de date numarul de vizite de azi; iar cand se trece la ziua urmatore, adauga numarul inregistrat intr-un "ieri" si incepe de la 1 pentru "azi".
Cerere cod preluare vizitele din ziua anterioara
-
- Administratorul site-ului
- Mesaje:4343
Cerere cod preluare vizitele din ziua anterioara
MarPlo
Mesaje:4343
De unde sa stie cineva sa-ti spuna cum sa faci daca nici nu stie ce script ai?
Daca nu tu ai facut scriptul si nu te pricepi, poti apela la cel care l-a facut.
Daca nu tu ai facut scriptul si nu te pricepi, poti apela la cel care l-a facut.
MarPlo
Mesaje:4343
Pune codul pe care l-ai facut pentru inregistrare si preluare vizite, si forma tabelului in care ssalvezi datele (daca e in mysql).
MarPlo
Mesaje:4343
Poti sa pui coloana "data" de tip DATE (daca in ea salvezi data si timpul inregistrarii).
Apoi, pt numarul de vizite azi incearca cu acest Select:
Iar pt ieri:
- Informatii si exemple despre asta poti gasi pe internet la cautare: " mysql date yesterday ".
Apoi, pt numarul de vizite azi incearca cu acest Select:
Cod: Selectaţi tot
$sql ='SELECT COUNT(*) FROM vizite WHERE site="'.$id.'"' AND data = DATE_SUB(CONCAT(CURDATE(), ' 00:00:00'), INTERVAL 1 DAY)';
Cod: Selectaţi tot
$sql ='SELECT COUNT(*) FROM vizite WHERE site="'.$id.'"' AND data = DATE_SUB(CONCAT(CURDATE(), ' 00:00:00'), INTERVAL 2 DAY)';
MarPlo
Mesaje:4343
Inainte de a inregistra vizita, faci un Select prin care verifici daca acel ip a fost inregistrat in ziua curenta. Daca Select-ul nu returneaza nici un rand, aplici Insert.
Cod: Selectaţi tot
$sql ='SELECT id FROM vizite WHERE ip="'.$ip.'"' AND DATE(data) = DATE(NOW()) LIMIT 1';
$resql = $conn->query($sql);
if($resql->num_rows <1) {
//Insert..
}
MarPlo
Mesaje:4343
In loc de $conn pune obiectul cu numele cum e in acel script, $xyz. Coloana "data" din tabel sa fie de tip DATE.
Cod: Selectaţi tot
$sql ='SELECT id FROM vizite WHERE ip="'.$ip.'"' AND DATE(data) = DATE(NOW()) LIMIT 1';
$resql = $xyz->query($sql);
if($resql->num_rows <1){
$xyz->query('INSERT INTO vizite SET ip ="'.$ip.'", data = DATE(NOW()), site ="'.$id.'"');
}
MarPlo
Mesaje:4343
Nu stiu cum ai codul si ce format are coloana pentru data din tabelul mysql.
- Ideea e sa faci codul astfel incat, inainte de Insert sa verifici daca mai e vreun rand inregistrat cu acel ip in acea zi.
- Ideea e sa faci codul astfel incat, inainte de Insert sa verifici daca mai e vreun rand inregistrat cu acel ip in acea zi.