begin process at 2010 02 10 03:59:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

problème d'ip avec php


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème d'ip avec php

samedi 13 janvier 2007 à 01:20:48 | problème d'ip avec php

ghyslain

bonjour, je voudrais en php: prendre l'ip de la personne qui va sur la page index.php et la mettre dans une base de donnée ou dans un fichier texte puis éffacer cette ip 24h apres quelle ait été enregistrée.

merci d'avance

samedi 13 janvier 2007 à 03:02:56 | Re : problème d'ip avec php

Bling 182

Bonsoir,

Pour avoir l'IP, il faut regarder $_SERVER['REMOTE_ADDR']

SI tu veux l'effacer de la base, il te faut un marqueur temporel également, genre tu enregistre dans un deuxieme champ de la table la date et l'heure.
Pour supprimer, suffira de comparer 2 dates.
samedi 13 janvier 2007 à 04:34:26 | Re : problème d'ip avec php

ghyslain

c'est bon si j'enregistre un timestamp a la premiere connection de l'ip et qu'apres je fasse une condition qui le compare du style:?


si (timestamp actuel >= 1er timestamp+84600secondes(24h))alors

effacé ip et timestamp lui correspondant de la table

sinon
rien faire
samedi 13 janvier 2007 à 12:50:35 | Re : problème d'ip avec php
samedi 13 janvier 2007 à 13:31:29 | Re : problème d'ip avec php

ghyslain

j'ai crée une table client avec 3 entrées :
_ip:pourinserer l'ip de la personne adns ma table
_temps:pour prendre le timestamp de la personne quand on a inscrit son ip
_entree:pour la condition

je n'arrive pas à ajouter d'entrées a ma table.
quand j'execute il ne met pas d'erreur mais n'inscrit rien dans ma table:

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("test");
$retour = mysql_query('SELECT COUNT(*) AS entree FROM client WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
$donnees = mysql_fetch_array($retour);
 echo $donnees['entree'];
if ($donnees['entree'] == 0)
{
mysql_query('INSERT INTO client VALUES(' . $_SERVER['REMOTE_ADDR'] . '\', ' . time() . ')');
//header('Location: \index.php');
}
else
{
}
$datec=time();
mysql_query('DELETE FROM client WHERE timestamp => ' . $donnees['team']+120 . ' AND ip=\'' . $_SERVER['REMOTE_ADDR']  );
mysql_close();
?>


pouriez vous corriger mes eventuelles erreurs svp?

merci d'avance

samedi 13 janvier 2007 à 21:23:10 | Re : problème d'ip avec php

ghyslain

la premiere parti du code marche bien et donc l'ip et le timestamp s'insere bien dans la table mais pour la 2e partie qui consiste a effacer les entrees quand elle sont la depuis 30seconde ne marche pas trop.

ce que je veux faire c'est:
effacerles entrees dans la table client où timestamp >= ancien timestamp enregistré +30 secondes.
donc normalement toute les 30 seconde on redirige sur une page.

pourquoi meme la variable $vard s'affiche quand je la met dans la 1ere parti du code et pas quand je l'a met dans la 2e partie?

je pense que tout le probleme est dans le while mais pourtant il est necessaise pour utiliser les entrees de la table client.


<?php
mysql_connect("localhost", "root", "");
mysql_select_db("forum");
$retour = mysql_query('SELECT COUNT(*) AS entree FROM client WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\' ');
$donnees = mysql_fetch_array($retour);
if ($donnees['entree'] == 0)
{
mysql_query('INSERT INTO client (ip, team) VALUES (\'' . $_SERVER['REMOTE_ADDR'] . '\', \'' . time() . '\')');
header('Location: \index.php');
}
else
{
}
while ($donnees = mysql_fetch_array($retour) )
{
$vard=time();
echo $vard;
/*mysql_query('DELETE FROM client WHERE '.$datec.' >= ' . $donnee['team']30 . ' AND ip=\'' . $_SERVER['REMOTE_ADDR']  ); */
}
mysql_close();
?>

samedi 13 janvier 2007 à 22:52:18 | Re : problème d'ip avec php

Bling 182

Pour effacer les IP qui sont dans ta table depuis plus de 24h, il te faut une tache planifiée qui appelle une page contenant le script de suppression régulierement.

En gros, il faudra te baser sur 2 pages pour faire ce que tu veux.

Dans la premiere, tu récuperes le timestamp et l'IP, et tu mets ca dans une base.

Sur la deuxieme (qui n'affiche aucun texte, et qui n'est pas dispo pour les "clients"), que tu appeleras avec ta tache planifiée, il suffit de mettre une ligne de SQL :

mysql_query ("DELETE FROM <table> WHERE timestamp <= (" . time() . " - 86400)");
samedi 13 janvier 2007 à 23:30:26 | Re : problème d'ip avec php

ghyslain

j'ai bien compris le principe mais je vois pas trop comment l'appliquer en effet j'ai chercher sur google et pas moyen d'avoir un petit tuto, meme pas sur le siteduzero donc je voudrais juste savoir le coed qui permet de faire l'appel de la page ou je vais mettre :
 
mysql_query ("DELETE FROM <table> WHERE timestamp <= (" . time() . " - 86400)");
dimanche 14 janvier 2007 à 00:15:40 | Re : problème d'ip avec php

Bling 182

Pour mettre le code, il te faut un accès "physique" au serveur, pour mettre en place une tache planifiée (crontab) qui via lynx ou un autre navigateur en mode texte va appeler ton script

/1 * * * * lynx http://www.ton-serveur.fr/ton-script-de-suppression.php

pour le lancer toutes les minutes par exemple.
Il faudra regarder les options pour charger la page et quitter proprement.
dimanche 14 janvier 2007 à 00:44:48 | Re : problème d'ip avec php

ghyslain

n'étant pas très doué en php, le manque de documentation sur crontab me bloque carement. je suis sur ifrance et il n'y a rien qui ressemble a du cron ou a lynx....
meme avec easyphp je ne trouve rien

au pire n'y aurais t-il pas une solution plus facile qui ferai le meme resultat?

1 2

Cette discussion est classée dans : problème, php, ip


Répondre à ce message

Sujets en rapport avec ce message

Débutant que je suis et gros problème en perspective !!! [ par rodolf ] G un gros problème, je débute en php, mais le problème c que (par ex) je mets ds le bloc note: print"salut";etc ...Et si je l' ouvre avec l' explor problème fichier php [ par craab ] bonjour!!!je suis en train de réaliser une appli qui permet de se logguer et suivant son mot de passe de diriger la personne sur telle ou telle page!: Problème URL [ par turlut ] bonjour tout le monde !Enfait mon problème est que j'aimerais bien réalisé un petit programme en php qui me permeterait de taper dans l'url d'un site Problème URL [ par turlut ] bonjour tout le monde !Enfait mon problème est que j'aimerais bien réalisé un petit programme en php qui me permeterait de taper dans l'url d'un site Problème avec input en php [ par iomega ] Bonjour à tous je voudrai savoircomment mettre en gras un inputvoici mon codemerci à tous.echo ("<input type=\"text\" name=\"res\" size='2' value=\"$r Php et l'evois de mail [ par karushi ] Bonjour a tous et tout mes voeux pour cette nouvelle année.J' ai un petit problème...J'ai trouvé un script du genre e-commerce, je l'ai modifié et ada Problème de redirection [ par alainG ] Après avoir créé un enregistrement dans une table à l'aide d'un formulaire, j'essaie de rediriger vers une liste de mon fichier sur une autre page av Formulaires HTML et PHP/MySQL, HELP! [ par yahaaa ] Mon problème est le suivant :J' ai créer un un formaire HTML qui est charger d'afficher les donnée d'une requête ( avec une boucle while en PHP), et l Ip 2 page web [ par Noobcpp ] Salut tous !! J''voudrais savoir si vous pouvez m'aider a faire une page php qui : - quand un internaut va dessus son ip est stocké sur une autre pag problème avec ftp_put() [ par Rabba ] J'ai crée un formulaire qui me load des images avec les fonctions ftp de php. Pour cela, j'ai crée un formulaire et j'ai spécifié enctype="multipart/f


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,967 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales