Visiteurs total

lektrosonic Messages postés 145 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 21 février 2013 - 14 nov. 2007 à 22:26
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 - 27 nov. 2007 à 06:10
Bonsoir,


j'ai voulu pouvoir compte le nombre total de visiteurs sur mon site.

A chaque fois que quelqun charge ma page, j'enregistre la date dans une table dans une BDD.

Vu que mon site a plusieurs page, pour eviter que sa enregistre a
chaque fois que le visiteur navigue, j'ai utilise les sessions.


J'ai ecrit alors ce code:

session_start();

$date=date('Y-m-d H:i:s');

if(isset($_SESSION['log']))

{

         

}

else

{

        mysql_connect("localhost", "root", "*****") or die("could not connect to db");

        mysql_select_db("base1") or die("could not select db");

        mysql_query("INSERT INTO visit(date) VALUES('$date')") or die (mysql_error());

        mysql_close();

        $_SESSION['log']=true;

}


Sa a l'air de marcher, mais je voudrais votre avis , suggestion pour l ameliorer.


Merci d avance

l3KTr0 Was HeRe

2 réponses

cs_Asherah Messages postés 25 Date d'inscription mercredi 14 novembre 2007 Statut Membre Dernière intervention 25 novembre 2007
15 nov. 2007 à 02:16
Salut.
Dejas les identifiants bdd directement dans le script chui pas specialement pour, mais bon...
apres c'est toi qui voit..
En fait tu veut enregistrer a chaque connection?
tu peu faire aussi par cookies.
0
yoman64 Messages postés 962 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 2 août 2010 2
27 nov. 2007 à 06:10
Salut.
Les cookies sont mieu adapté a ça je crois, puisque tu peux spécifié la durée.

En plus

if(isset($_SESSION['log']))

{

         

}

else
....

Tu devrais faire ça:

if( !isset($_SESSION['log']))

{

        mysql_connect("localhost", "root", "*****") or die("could not connect to db");

        mysql_select_db("base1") or die("could not select db");

        mysql_query("INSERT INTO visit(date) VALUES('$date')") or die (mysql_error());

        mysql_close();

        $_SESSION['log']=true;
}

Dernier petit conseils: Enleve tes die() , parce que avec ça si ton serveur réponds pas pour une raison quelqu'onque , toute la page va etre impossible a afficher, ça peut nuire je crois...

Par exemple:

if( mysql_connect("localhost", "root", "*****")) {
    if (mysql_select_db("base1") ) {
        mysql_query("INSERT INTO visit(date) VALUES('$date')");
        mysql_close();

        $_SESSION['log']=true;

    }
}

Évidement si ta page en partant repose lourdement sur mysql tu peux ignoré mon conseil !
Alors voila, biensur tout cela est subjectif , c'est surtout questions de préférence!

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
0
Rejoignez-nous