IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Insérer en base de donnée mes visiteurs


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Homme Profil pro
    Webmaster
    Inscrit en
    Décembre 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 84
    Par défaut Insérer en base de donnée mes visiteurs
    Bonjour à tous !

    Voila j'ai besoin d’insérer en base de donnée chaque visiteurs qui vient sur mon site.
    Je vais dont insérer en base de donnée : Id - Date - Tracker - Ip (optionnel)

    C'est un site qui fait environ 20 000 visiteurs jours avec des pointes à 30 000.

    Je me dit que ça va faire beaucoup d’insérer en base de donnée une ligne à chaque visiteurs si je met un "mysql_query("insert into....." Non ?

    Avez vous une idée d'optimisation afin d'avoir des statistiques des visiteurs ?

    Merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Les statistiques d'accès sont déjà consignés par le serveur web.
    Tu dois avoir des logs.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Homme Profil pro
    Webmaster
    Inscrit en
    Décembre 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 84
    Par défaut
    Oui mais en faite j'ai besoin de rajouter un tracker pour chaque visiteurs, et il faut que je les affiches dans une page en php pour mes affiliés.

  4. #4
    Membre très actif
    Homme Profil pro
    Déveleoppeur Web/Mobile
    Inscrit en
    Avril 2013
    Messages
    330
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Déveleoppeur Web/Mobile
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 330
    Par défaut
    Je sais pas si tu connais Google analytics ?

    Sinon si tu veux insérer dans la BDD je ne vois pas de moyen d'optimiser. Après si un même visiteur revient plusieurs fois il ne faut pas le réinsérer et vérifier si l'IP est déjà présente dans ta table pour ne pas avoir de redondance
    Aussi on peut imaginer que tu conserves l'IP de tous les visiteurs dans un fichier txt ou autre puis tu fais une requête qui insère tout la nuit à 3h du mat via une cron

  5. #5
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Pareil que les autres : si tu veux stoker en base, il faut faire une requête d'insertion, point barre. L'alternative du fichier tampon et de la tâche planifiée est une solution. Dans ce cas, je recommanderais de faire des fichiers avec des noms différents (par exemple, avec la date du jour) et de purger de temps en temps les anciens fichiers. Cela permettrait de traiter le fichier de la veille dans la tâche et de ne pas avoir de conflit avec le fichier du jour qui peut être en cours d'écriture.

    Citation Envoyé par -Rpass- Voir le message
    Après si un même visiteur revient plusieurs fois il ne faut pas le réinsérer et vérifier si l'IP est déjà présente dans ta table pour ne pas avoir de redondance
    On peut éventuellement éviter la vérification en utilisant une clé unique (IP + date du jour par exemple) et en interceptant l'erreur dans le cas où on insère une ligne déjà existante dans la base. Bon évidemment, c'est un peu moche et ça veut dire que si il y a quelque chose d'autre qui plante sur l'insertion, ça va aussi être intercepté...
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Avec INSERT IGNORE on évite l'erreur.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre confirmé
    Homme Profil pro
    Webmaster
    Inscrit en
    Décembre 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 84
    Par défaut
    Merci pour vos réponses.

    Je suis toujours à la recherche de ma solutions, et j'ai une question, si ma table sql à 900 voir 1000 requêtes (lignes) es ce que mon site sera lent ou cela n'a aucun rapport ?

  8. #8
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Attention aux dénominations : une requête en base, c'est une instruction envoyée à la base pour faire une insertion, modification, suppression ou sélection. Donc tu ne peux pas avoir une "table à 900 requêtes".
    Ce que tu peux avoir, c'est une table contenant 900 lignes (ou enregistrements).

    Quant à l'impact du nombre de lignes sur les performances, ça dépend des requêtes que tu utilises. Pour une requête d'insertion de base, je ne pense pas que ça ait un grand impact (et à savoir : 900 lignes, c'est pas grand chose pour une table)
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  9. #9
    Membre confirmé
    Homme Profil pro
    Webmaster
    Inscrit en
    Décembre 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 84
    Par défaut
    Merci beaucoup

Discussions similaires

  1. Réponses: 0
    Dernier message: 09/05/2016, 11h47
  2. Insérer une base de données sur site hébergé
    Par NaïsMouart dans le forum Débuter
    Réponses: 6
    Dernier message: 18/05/2009, 11h32
  3. [CKEditor] insérer le contenu saisi dans la base de données
    Par dedel53 dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 31/05/2007, 15h41
  4. insérer des élément dans une base de donné
    Par wiss20000 dans le forum JDBC
    Réponses: 5
    Dernier message: 01/03/2007, 14h49
  5. Insérer Enregistrement dans Base de données
    Par TurricanII dans le forum JBuilder
    Réponses: 3
    Dernier message: 30/05/2006, 12h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo