Enregistré l'adresse IP de tous les visiteurs
Fermé
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
-
23 juin 2016 à 23:45
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 - 30 juin 2016 à 08:20
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 - 30 juin 2016 à 08:20
A voir également:
- Enregistré l'adresse IP de tous les visiteurs
- Ethernet n'a pas de configuration ip valide - Guide
- Darkino nouvelle adresse - Guide
- Rechercher ou entrer l'adresse - Guide
- Comment connaître son adresse ip - Guide
- Adresse mac - Guide
4 réponses
astuces72
Messages postés
7723
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
22 avril 2024
1 637
Modifié par astuces72 le 23/06/2016 à 23:52
Modifié par astuces72 le 23/06/2016 à 23:52
slt
Utilise plutôt les cookies, pas besoin de table comme ça.
tu enregistres l'information dans le cookie, et à chaque visite tu le lis.
pour la connexion, rien de compliquer si tu sais programmer php un minimum
:-)Pour un vieux de 47 ans, je peux encore en apprendre et vous en apprendre aussi :-D
Utilise plutôt les cookies, pas besoin de table comme ça.
tu enregistres l'information dans le cookie, et à chaque visite tu le lis.
pour la connexion, rien de compliquer si tu sais programmer php un minimum
:-)Pour un vieux de 47 ans, je peux encore en apprendre et vous en apprendre aussi :-D
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
21
24 juin 2016 à 10:34
24 juin 2016 à 10:34
Bonjour, pas d'idée ce matin :/
Je cherche toujours,....
Je cherche toujours,....
astuces72
Messages postés
7723
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
22 avril 2024
1 637
24 juin 2016 à 10:45
24 juin 2016 à 10:45
Si tu sais enregistrer en bdd les infos, ton problème est ou exactement ?
Il faut utiliser les SESSION pour ce genre de chose.
Une fois connecter, tu place le login dans $_SESSION['login']
http://www.lephpfacile.com/howto/10-comment-faire-un-espace-membre-en-php
Il faut utiliser les SESSION pour ce genre de chose.
Une fois connecter, tu place le login dans $_SESSION['login']
http://www.lephpfacile.com/howto/10-comment-faire-un-espace-membre-en-php
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
21
24 juin 2016 à 10:51
24 juin 2016 à 10:51
Sais pour faire la vérification si ip et avec un pseudo enregistré si ip est en temps que visiteur enregistré et mettre a jour si besoin sa en raquette SQL avec PDO et condition je galère beaucoup.
astuces72
Messages postés
7723
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
22 avril 2024
1 637
24 juin 2016 à 11:09
24 juin 2016 à 11:09
tu en est ou exactement, donne nous ton code ou le morceau de ta galère
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
21
24 juin 2016 à 11:35
24 juin 2016 à 11:35
Le problème sais que déjà la variable $pseudo = $_SESSION['pseudo']; n'est pas récupérer donc code erreur.
Et la mise a jour si une personne ce connecte n'est pas active car j'ai aucune idée de comment faire.
Et la mise a jour si une personne ce connecte n'est pas active car j'ai aucune idée de comment faire.
`<?php
//Affichage des erreurs PHP
error_reporting(E_ALL);
//Demarrage des sessions
session_start();
//connexion à la BDD (on inclus le fichier)
require_once "cnxBDD.php";
$ip = $_SERVER['REMOTE_ADDR'];
$date = date("Y-m-d");
$heur = date("H:i:s");
$pseudo = $_SESSION['pseudo'];
$inconnu = "visieur";
if(isset($_SESSION['pseudo']))
{
$insertmbr = $bdd->prepare("INSERT INTO uttilisateurs(name, date, heur, ip) VALUES(?, ?, ?, ?)");
$insertmbr->execute([$pseudo, $date, $heur, $ip]);
$info = "OK 1";
}
else
{
$insertmbr = $bdd->prepare("INSERT INTO uttilisateurs(name, date, heur, ip) VALUES(?, ?, ?, ?)");
$insertmbr->execute([$inconnu, $date, $heur, $ip]);
$info = "OK 2";
}
echo "$info";
?>
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
21
24 juin 2016 à 11:38
24 juin 2016 à 11:38
En plus a chaque fois que je navigue ça enregistre une nouvelle ligne a chaque fois que je charge la page.
Donc voila je galère vraiment mais je cherche ;)
Donc voila je galère vraiment mais je cherche ;)
astuces72
Messages postés
7723
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
22 avril 2024
1 637
Modifié par astuces72 le 24/06/2016 à 12:44
Modifié par astuces72 le 24/06/2016 à 12:44
essaye ça, je n'ai pas testé:
A condition que $_SESSION['pseudo'] ne soit pas vide sur ta page de connexion une fois connecté.
je regarde dans la bdd sir l'ip n'est pas déjà présente, si non j'enregistre.
si $_SESSION['pseudo'] est vide, c'est qu'il n'y a pas eu de connexion, alors $pseudo ='Inconnu'
Et je ne suis absolument pas un pro php, donc...
:-)Pour un vieux de 47 ans, je peux encore en apprendre et vous en apprendre aussi :-D
A condition que $_SESSION['pseudo'] ne soit pas vide sur ta page de connexion une fois connecté.
je regarde dans la bdd sir l'ip n'est pas déjà présente, si non j'enregistre.
si $_SESSION['pseudo'] est vide, c'est qu'il n'y a pas eu de connexion, alors $pseudo ='Inconnu'
`<?php
//Affichage des erreurs PHP
error_reporting(E_ALL);
//Demarrage des sessions
session_start();
require_once "cnxBDD.php";
$ip = $_SERVER['REMOTE_ADDR'];
$date = date("Y-m-d");
$heure = date("H:i:s");
$pseudo = $_SESSION['pseudo'];
if (empty($pseudo)) { $pseudo='Inconnu' ; }
$req = $bdd->prepare('SELECT id FROM uttilisateurs WHERE ip = :ip ');
$req->execute(array(
'ip' => $ip));
$resultat = $req->fetch();
if (!$resultat)
{
$insertmbr = $bdd->prepare("INSERT INTO uttilisateurs(name, date, heur, ip) VALUES(?, ?, ?, ?)");
$insertmbr->execute($pseudo, $date, $heur, $ip);
$info = "OK 1";
}
echo $info;
?>
Et je ne suis absolument pas un pro php, donc...
:-)Pour un vieux de 47 ans, je peux encore en apprendre et vous en apprendre aussi :-D
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
21
24 juin 2016 à 16:44
24 juin 2016 à 16:44
Donc j'ai essayer cela et j'ai rien dans la base de données en temps que visiteur pourtant marquer "OK 1" aucun autre message d'erreur.
Et rien non plus dans la base de données quand je suis connecter.
Et rien non plus dans la base de données quand je suis connecter.
astuces72
Messages postés
7723
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
22 avril 2024
1 637
Modifié par astuces72 le 24/06/2016 à 16:56
Modifié par astuces72 le 24/06/2016 à 16:56
si marquer OK 1 c'est que ça rentre bien, vérifies tes noms de variable et de table
astuces72
Messages postés
7723
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
22 avril 2024
1 637
24 juin 2016 à 17:05
24 juin 2016 à 17:05
ah oui, je me basais sur un id que tu n'as pas.
change
$req = $bdd->prepare('SELECT id FROM uttilisateurs WHERE ip = :ip ');
par
$req = $bdd->prepare('SELECT name FROM uttilisateurs WHERE ip = :ip ');
bizarre que tu entres quand même après le test de champ présent !
change
$req = $bdd->prepare('SELECT id FROM uttilisateurs WHERE ip = :ip ');
par
$req = $bdd->prepare('SELECT name FROM uttilisateurs WHERE ip = :ip ');
bizarre que tu entres quand même après le test de champ présent !
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
21
24 juin 2016 à 17:22
24 juin 2016 à 17:22
Donc la non plus, j'ai que je sois connecter ou pas j'ai mon OK 1 mais rien dans la base de données moi je travail sur ce code que j'ai un peu modifier.
le problème je crois que mon UPDATE ne passe pas car j'ai pas de mise a jour au niveau de la base de donnée.
<?php
//Affichage des erreurs PHP
error_reporting(E_ALL);
//Demarrage des sessions
session_start();
//connexion à la BDD (on inclus le fichier)
require_once "cnxBDD.php";
$ip = $_SERVER['REMOTE_ADDR'];
$date = date("Y-m-d");
$heur = date("H:i:s");
$pseudo = $_SESSION['pseudo'];
$inconnu = "visiteur";
$retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM uttilisateurs WHERE ip=\'' . $ip . '\'');
$donnees = mysql_fetch_array($retour);
if ($donnees['nbre_entrees'] == 0) // L'IP ne se trouve pas dans la table, ajouter IP.
{
if(isset($_SESSION['pseudo']))
{
$insertmbr = $bdd->prepare("INSERT INTO uttilisateurs(name, date, heur, ip) VALUES(?, ?, ?, ?)");
$insertmbr->execute([$pseudo, $date, $heur, $ip]);
$info = "OK 1";
}
else
{
$insertmbr = $bdd->prepare("INSERT INTO uttilisateurs(name, date, heur, ip) VALUES(?, ?, ?, ?)");
$insertmbr->execute([$inconnu, $date, $heur, $ip]);
$info = "OK 2";
}
}
else
{
mysql_query('UPDATE uttilisateurs SET name= ' . $_SESSION['pseudo'] WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\''). ';
$info = "OK 3";
}
?>
echo "$info";
le problème je crois que mon UPDATE ne passe pas car j'ai pas de mise a jour au niveau de la base de donnée.
flo39400
Messages postés
596
Date d'inscription
mardi 8 avril 2008
Statut
Membre
Dernière intervention
9 septembre 2021
21
30 juin 2016 à 08:20
30 juin 2016 à 08:20
Bonjour pu personne ?
Car moi ça avance pas :/
Car moi ça avance pas :/
23 juin 2016 à 23:52
23 juin 2016 à 23:53
23 juin 2016 à 23:54
tu connais quoi au php et aux bases de données ?
24 juin 2016 à 00:38
Si l'ip change vu que j'aurai la liste des IP que le pseudo X sais connecter il faudra juste bannir toutes les IP et sont pseudo par la même occasion.