Bonjour à tous,
Voici un code que je vien a peine de terminer. Vous connaisser surement des scripts en PHP qui permette de savoir qui est en ligne sur votre site... leur principe est simple:
Lors de laffichage d'une page stoker le ip, la date et l'heure de visionnement du visiteur dans une BD ou autre support comme un fichier texte.Et ensuite faire un script PHP pour qui supprime les entrée IP ayant la date inférieure à la date actuel - X minutes . Ou X est un nombre de minute, ensuite compter le nombre d'entrée IP restante et lafficher.
Bon et bien je suis parti du même principe mais j'ai grandement améliorer le système, le plsu grand problème de c'est script c'est leurs précision... admetton qu nous mettons 5 pour le X cela fait 5 min ou ne sait pas si le visiteur est vraiment en ligne...
Et bien le script que je vous propose règle se problème et passe de 5min à 20 secondes... beaucoup plus précis non ?
Source / Exemple :
<!-- LE RESTE EST DS LE ZIP -->
<!-- LE RESTE EST DS LE ZIP -->
<!-- LE RESTE EST DS LE ZIP -->
<!-- EXEMPLE DE PAGE AVEC CE SCRIPT -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>whoIsOnline</title>
<script language="javascript" src="includes/js/whoIsOnline.js"></script>
</head>
<!--
// Système pour connaitre les personne en lignes sur son site...
// Système améliorer des versions traditionnel, puisque la précision ce compte en secondes
// Programmer par Jocelyn Ménard
// crenox@hotmail.com
fonctionnement:
function start ds le unload du body ->
PARAMETRE:
1 : le idPath -> C'est le préfix des id des zones... (laisser tel quel)
2 : temps apres lequel l'update de connection est effectué (en secondes)
3 : variable SERVEUR PHP qui est égal au IP du visiteur .. (laisser tel quel)
LE DIV:
Placer le DIV whoIsOnline_zone à l'endroit désirer dans zotre page.. c'est
à cet encdoirt que le nombre de visiteur sera afficher
-->
<body onLoad="start('whoIsOnline',15,'<?php echo $_SERVER['REMOTE_ADDR']; ?>'); onUnload="checkClosePage('<?php echo $_SERVER['REMOTE_ADDR']; ?>');"">
<div id="whoIsOnline_zone" style="border:1px #006699 solid;width:200px;height:15px;padding:4px; background-color:#CCCCCC;"></div>
</body>
</html>
Conclusion :
Le script fonctionne avec XMLHttpRequest qui est maintenant compatible avec plusieurs navigateur.
Le simple ... quelques fonctions javascript gère le temps ecouler, et apres X secondes appelle une page PHP qui actualise la connection indiquant que le visiteur est encore en ligne. (Pour ceux qui ne savent pas comment focntionne XMLHttpRequest c'Est une fonction javascript qui permet d'executer un fichier serveur sans recharger la page et d'en tirer des données)
Il y a aussi un lien a coter du de nombre de visite pour actualiser ce nombre... donc si vous cliquer vs verrez le nombre changer si il y du trafic sur votre site
NOTE: N'oublier pas de modifier les paramètre de connexion a votre BD dans le fichier config.php
NOTE2: La Variable $_SERVER['REMOTE_ADDR'] ne semble pas fonctionner en local, donc pour test local remplacer <?php $_SERVER['REMOTE_ADDR']; ?> par un ip fictif comme: 127.0.0.1 ... c'est aussi une bonne maniere de teste plusieurs connection... avec une plusieurs copies de exemple.php avec un ip différent à la place de <?php $_SERVER['REMOTE_ADDR']; ?>.
moi j'aime bien ce genre de fonction :D, de plus j'ai été surpris qu'elle soit si peut répendu ... enfin bref com + note normal car j'utilise ton script et qu'il me conviens très bien merci encore ;)
Moi perso je suis un peut ce qu'on pourrait qualifier comme "débutant". j'essaie d'apprendre sur le tas.. et ça me réussi un peut... parceque au début, quand j'ai commencé mon site, je savais rein du tout.. et maintenant ça avance plus vite mes pitits codage ... :)
bref, donc félicitation pour avoir réussi à faire quelques chose d'intéligent... et ton idée est très simpa... c'est d'ailleur ce que je recherche à faire sur mon site.
Enfaite plus exactement j'aimeré fair en système comme sur certain forum, c'est à dire savoir qui viens (ce qui afficheré son pseudo...) un truk dans le genre...
Mais là c'est une autre histoire, il faut faire un truc de membre rég et tout je pensse (et moi pas savoir faire tou ça :'( ).. donc je laiss tomber malheureusement...
Mais tou ça pour dire que ta eu une bonne idée et que ton aide va être précieuse à beaucoup de monde je pensse. (moi le premier).
Et....
Et,
Et pourtant... j'ai un souci..
étant débutant comme je le disais, j'ai du mal à comprendre pourquoi le code ne fonctionne pas chez moi :/
J'ai un rectangle gris sur la page test... mais rien d'autre... de plus un message dans la barre des tâche me di en gros "Terminé mais ya des Erreurs"....
Alors je suis un peut dans la panade là.... :/
Quelqu'un sourait donc me dire quel pourrait etre mon souci?
sachant que j'ai rien modifier du tout, j'ai laissé le script comme original (une sorte de clin d'oeil à l'auteur.... et faut avouer aussi que je risquerai faire plus de bétises qu'autre chose ^^).
Merci d'avance pour votre réponse...
Et bon courage à tout les codeurs débutants ou expérimentés... ya des truc super super simpa sur ce site...
Continuez... ;)
Je ne sais pas pourquoi mais de mon coté les tables ne se cré pas ^^
++ et bon courage
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.