Partage
  • Partager sur Facebook
  • Partager sur Twitter

compteur de téléchargement

    27 janvier 2007 à 0:53:36

    bonsoir,

    je cherche a savoir si c'est possible de mettre 1 tableau avec

    les 5 derniéres logiciels les plus téléchargé.

    par exemple

    si on a téléchargé

    30 fois windows live
    20 fois messenger plus live,
    50 fois script

    soit on affiche les 5 dernier les plus téléchargé ou les 5 derniers téléchargé sur mon site

    en sachant j'ai déja installé un compteur de téléchargement juste pour voir le nombre de téléchargement mais mal heureusement il ne fait pas 1 tableau des récapulatif des 5 derniers téléchargement

    es ce que vous connaissé un scripts qui peux faire tout ceux que je veux ou un tuteau pour crée des pages poiur le faire

    • Partager sur Facebook
    • Partager sur Twitter
      27 janvier 2007 à 0:59:11

      Utilise - tu une base de donnée ?
      • Partager sur Facebook
      • Partager sur Twitter
        27 janvier 2007 à 1:04:45

        oui je pense que je peux utilise la base doné

        enfin si chez free l'autorise
        je ne sais pas comment on fait mais j'aimerais apprendre en tout cas
        • Partager sur Facebook
        • Partager sur Twitter
          27 janvier 2007 à 1:19:04

          Citation : actualite

          oui je pense que je peux utilise la base doné

          enfin si chez free l'autorise
          je ne sais pas comment on fait mais j'aimerais apprendre en tout cas


          Oui, free te l'autorise, il faut te rendre ici : http://sql.free.fr
          Tu aura accès a PhpMyAdmin, et pour en revenir a ton pb principal, tu rajoute un champ a chaque logiciel, tu nomme ce champ : nb_telechargement

          Et ensuite tu faite une reque SQL qui trie tes logiciel en fonction de leur nb de telechargement, dans l'ordre décroissant, limiter a 5
          Je te laisse faire la requete tout seul ce n'est pas bien compliqué.
          • Partager sur Facebook
          • Partager sur Twitter
            27 janvier 2007 à 1:30:56

            es ce que déjà il faut quelqu'un télécharge avant de faire ça
            car je ne voit pas mes logiciels sur ma basse sql

            des que tu as 5 mn es ce que tu pouraisd me faire des capture d'écran et je comprendrais plus facilement

            merci d'avance
            • Partager sur Facebook
            • Partager sur Twitter
              27 janvier 2007 à 1:35:37

              Quel genre de compteur de telechargement as tu ? C'est un trucs ou tes inscrit sur un site , etc...
              • Partager sur Facebook
              • Partager sur Twitter
                27 janvier 2007 à 1:44:03

                re

                c'est ce site
                http://steph.pineau.free.fr/php/index.php?LNK=S4

                il utilise 2 fichiers compteur.php3 et download.php3
                je ne sais pas si on peux changé les codes pour permettre de réalisé le tableau

                si tu veux les codes des pages dit le moi
                • Partager sur Facebook
                • Partager sur Twitter
                  27 janvier 2007 à 2:02:05

                  Enfaite, ce quil faudrait que tu fasse c'est juste un script qui utilise $_GET
                  Pour pouvoir noter tout les telechargement . Je mexplique :

                  Imaginons que ta table "logiciels" contienne :
                  -id
                  -nom_logiciel
                  -description_logiciel
                  -nb_telechargement


                  Lorsque que le visiteur est sur la page du logiciel ayant pour id 20 par exemple, tu fait un lien du genre download.php?idlog=20

                  Sur download.php tu fait une page du style (je fais un truc vite fait car c tard et jsui crevé) :
                  if( isset($_GET['idlog']))
                  {
                    mysql_query("UPDATE logiciels SET nb_telechargement=nb_telechargement + 1 WHERE id=" . $_GET['idlog'] .);
                  //ici tu metra ce qui envoi le visiteur sur ton fichier avec un header().
                  }
                  else
                  {
                  echo'pas de telechargement pour cet article';
                  }


                  Voila ca devrait etre bon, par contre /|\atention/|\ a 2 trucs :
                  -La variable $_GET['idlog'] n'est pas proteger il fodra faire un truc avec htmlentities ou un otre truk la jsui trop mort pr retrouver.
                  -Je ne suis pas sur pour l'incrementation en SQL, si le +1 ne fonctionne pas, cherche l'incrementation sql sur google ou si quelqu'un sur ce forum se souvien.

                  Voila je pense que je t'aii donné les bases pour ton trucs. Bonne nuit.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 janvier 2007 à 2:20:18

                    re

                    voilà je pense que j'ai trouvez ceux que tu cherche je pense

                    http://www.commentcamarche.net/forum/affich-1844556-requete-sql

                    es ce que tu pourrais me dire ou je doit mettre ton ocde sur ma page

                    download.php3

                    Citation : Pas de titre

                    <SCRIPT LANGUAGE="php">
                    /////////////////////////////////////////////////////////////////////////////
                    //// COMPTEUR DE TELECHARGEMENTS ////
                    //// <15/10/99 Version 1.00> ////
                    //// (c) <spineau@teaser.fr> ////
                    /////////////////////////////////////////////////////////////////////////////
                    //// ParamŠtre en entr,e : $Fichier : nom du fichier à télécharger (doit )
                    //// obligatoirement être dans le même
                    //// répertoire que le script.
                    //// Appel du script : <A HREF="download.php3?Fichier=toto.zip">
                    //// Fichier Compteur = $Fichier+.dat;
                    //// 07/00 : Suppression des références à BC-Math
                    /////////////////////////////////////////////////////////////////////////////
                    $FileCompteur=$Fichier.".dat";
                    ///------Fonctions Lock et Unlock d'aprŠs Etienne De Toqueville--------------
                    Function lock($file) {
                    $timeout = 30; // Timeout (secondes) PHP
                    $retry = 5; // Temps maxi (secondes) d'attente avant abandon
                    $delay = 0.1; // Durée d'attente (secondes) entre chaque test

                    if (file_exists($file.".lck")) {
                    $time = @filemtime($file.".lck");
                    if ($time) {
                    $since = time() - $time;
                    if ($since > $timeout) unlink($file.".lck");
                    }
                    }

                    for($i = 0; $i < $retry; $i += $delay) {
                    if (!file_exists($file.".lck")) {
                    $idlck=fopen($file.".lck","w");
                    fclose($idlck);
                    return 1;
                    }
                    usleep($delay * 1000000);
                    }
                    return 0;
                    }
                    ///-------------------------------------------------------------------------
                    Function unlock($file) {
                    $i = @unlink($file.".lck");
                    return $i;
                    }
                    ///-------------------------------------------------------------------------
                    Function Error($Msg){
                    Echo $Msg;
                    FinPres();
                    Exit("");
                    }
                    ///-------------------------------------------------------------------------
                    if (!file_exists($FileCompteur)){
                    $Compteur=1;
                    $Fp=fopen($FileCompteur,"w");
                    fputs($Fp,$Compteur);
                    fclose($Fp);
                    }
                    else{
                    if (!lock($FileCompteur)) Error("Occupé ! Recommencez plus tard. Merci.");
                    $Fp=fopen($FileCompteur,"r");
                    $Compteur=Trim(fgets($Fp,255))+1;
                    fclose($Fp);
                    $Fp=fopen($FileCompteur,"w");
                    fputs($Fp,$Compteur);
                    fclose($Fp);
                    unlock($FileCompteur);
                    }
                    Header("Location: ".$Fichier);
                    Exit("");
                    </SCRIPT>




                    compteur.php3

                    Citation : Pas de titre

                    <SCRIPT LANGUAGE="php">
                    /////////////////////////////////////////////////////////////////////////////
                    //// COMPTEUR DE TELECHARGEMENTS ////
                    //// <15/10/99 Version 1.00> ////
                    //// (c) <spineau@teaser.fr> ////
                    /////////////////////////////////////////////////////////////////////////////
                    //// Paramètre en entrée : $Fichier : nom du fichier à télécharger (doit )
                    //// obligatoirement être dans le même
                    //// répertoire que le script.
                    //// Appel du script : Voir doc
                    //// 07/00 : Remplacement de toutes les référence à librairie bc-math
                    //// pour compatibilité maximum avec version de base php4
                    /////////////////////////////////////////////////////////////////////////////
                    ///------Fonctions Lock et Unlock d'aprŠs Etienne De Toqueville--------------
                    Function lock($file) {
                    $timeout = 30; // Timeout (secondes) PHP
                    $retry = 5; // Temps maxi (secondes) d'attente avant abandon
                    $delay = 0.1; // Durée d'attente (secondes) entre chaque test

                    if (file_exists($file.".lck")) {
                    $time = @filemtime($file.".lck");
                    if ($time) {
                    $since = time() - $time;
                    if ($since > $timeout) unlink($file.".lck");
                    }
                    }

                    for($i = 0; $i < $retry; $i += $delay) {
                    if (!file_exists($file.".lck")) {
                    $idlck=fopen($file.".lck","w");
                    fclose($idlck);
                    return 1;
                    }
                    usleep($delay * 1000000);
                    }
                    return 0;
                    }
                    ///-------------------------------------------------------------------------
                    Function unlock($file) {
                    $i = @unlink($file.".lck");
                    return $i;
                    }
                    ///-------------------------------------------------------------------------
                    Function Error($Msg){
                    Echo $Msg;
                    // FinPres();
                    Exit("");
                    }
                    ////////////////////////////////////////////////////////////////////////////
                    Function Align($num){
                    ////////////////////////////////////////////////////////////////////////////
                    // Aligne un nombre sur 6 caractŠres avec des 0
                    $str=$num;
                    for ($x=strlen($str);$x<6;$x++){
                    $str="0".$str;
                    }
                    return $str;
                    }
                    ///-------------------------------------------------------------------------
                    Function PrintCompteur($File){
                    $FileCompteur=$File.".dat";
                    if (!file_exists($FileCompteur)){
                    $Compteur="0";
                    }
                    else{
                    if (!lock($FileCompteur)) Error("????");
                    $Fp=fopen($FileCompteur,"r");
                    $Compteur=Trim(fgets($Fp,255));
                    fclose($Fp);
                    unlock($FileCompteur);
                    }
                    Echo Align($Compteur);
                    }
                    </SCRIPT>



                    si tu peux me placé le code a la bonne place et je ferais le teste ensuite.

                    merci et prend le temps
                    • Partager sur Facebook
                    • Partager sur Twitter
                      27 janvier 2007 à 2:23:03

                      Je trouve ton code trop compliqué pour ce que tu veut en faire, tu n'as pas besoin de ce code.
                      As-tu déja une base de donnée ? où sont enregistrer tout les logiciel présent sur ton site ?
                      EDIT : J'ai édité le code de mon post en haut, l'incrémentation doit marché.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 janvier 2007 à 2:36:23

                        "Couper un bout de pain avec une tronçonneuse."

                        Y'a juste à faire une incrémentation sur un champs de ta DB et ensuite une requete avec un tri dans l'ordre croissant sur le champ en ne retenant que les 5 premiers (rappelle toi que le premier est le 0), une boucle et le tour est joué.

                        Avec ça tu as dejà une base de départ. Ensuite à toi de te creuser les meninges un peu.
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Learning English mostly fixes 99% of programmation issues...
                          27 janvier 2007 à 2:41:05

                          Citation : cirilo

                          "Couper un bout de pain avec une tronçonneuse."

                          Y'a juste à faire une incrémentation sur un champs de ta DB et ensuite une requete avec un tri dans l'ordre croissant sur le champ en ne retenant que les 5 premiers (rappelle toi que le premier est le 0), une boucle et le tour est joué.

                          Avec ça tu as dejà une base de départ. Ensuite à toi de te creuser les meninges un peu.


                          C'est ce que j'ai marqué dans mes POST plus haut.
                          Les scripts tout faits c'est bien mais faut deja en avoir l'utilité.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            27 janvier 2007 à 2:44:55

                            Dsl Albérique, pas vu, faut dire à cette heure!
                            • Partager sur Facebook
                            • Partager sur Twitter
                            Learning English mostly fixes 99% of programmation issues...
                              27 janvier 2007 à 2:55:34

                              re

                              j'ai place ton code sur la page download.php3

                              Citation : Pas de titre

                              <?php if( isset($_GET['idlog']))
                              {
                              mysql_query("UPDATE logiciels SET nb_telechargement=Messengerpluslive4.11.254.rar + 1 WHERE id=" . $_GET['idlog'] .);
                              //ici tu metra ce qui envoi le visiteur sur ton fichier avec un header().
                              }
                              else
                              {
                              echo'download.php?idlog=20 ';
                              } ?>



                              et j'ai mis mon lien de téléchargement mais je suis paumé car je suis quelqun qui as du mal avec les scripts ou le code mais des qu'il y as des capture d'ecrans ou me dire ou il faut le mettre a quelle ligne etc... là je comprend plus vite que par des scripts

                              tu comprend

                              en tout cas j'ai essayé de le faire même si c'est pas du 1 er coup que je comprendrais
                              • Partager sur Facebook
                              • Partager sur Twitter
                                27 janvier 2007 à 3:01:29

                                Citation : cirilo

                                Dsl Albérique, pas vu, faut dire à cette heure!


                                Ouai tu m'étonne

                                Et pour que je puisse t'aider ne serait-ce qu'un tout petit peu, il faut que tu me donne ta base de donné, dit moi son nom, quelle champs elle contient etc...
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  28 janvier 2007 à 4:18:18

                                  re

                                  voilà j'ai trouvé un script pour le faire tu vas me dire si c'est bien ça ou je me trompe

                                  la table :

                                  Citation : Pas de titre

                                  CREATE TABLE compteur(
                                  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, # identifiant
                                  texte VARCHAR(255) NOT NULL, # texte pour les liens
                                  fichier VARCHAR(255) NOT NULL, # les fichiers
                                  compt INT(11) NOT NULL #notre compteur
                                  );



                                  affiche.php

                                  Citation : Pas de titre

                                  <?php
                                  echo"<b>Votre rubrique...</b>";
                                  echo"<br>";
                                  // connection à la base de donnée
                                  $connect = mysql_connect("localhost","root","");
                                  // selection de la base
                                  mysql_select_db("Votre_base", $connect);
                                  // selection des données
                                  $req=mysql_query("SELECT * FROM compteur ");
                                  // affichage des données avec une boucle while et mysql_fetch_array
                                  while($tab = mysql_fetch_array($req,MYSQL_ASSOC)){
                                  // lien vers le fichier qui incrémentera le compteur
                                  echo"<a href='compteur.php?id=".$tab['id']."'>".$tab['texte']."</a>";
                                  // le nombre de lecture du fichier
                                  echo"( ".$tab['compt']." lecture(s) )<br>";
                                  }
                                  // fermeture de la connection
                                  mysql_close();
                                  ?>



                                  Citation : Pas de titre

                                  <?php
                                  // connection à la base
                                  $connect = mysql_connect("localhost", "root", "");
                                  // selection de la base
                                  mysql_select_db("Votre_base",$connect);
                                  // on incrémente de +1 le fichier selectionné
                                  mysql_query("UPDATE compteur SET compt=compt+1 where id='".$_GET['id']."'");
                                  // selection du fichier
                                  $res=mysql_query("SELECT fichier FROM compteur WHERE id='".$_GET['id']."'");
                                  $tab=mysql_fetch_array($res, MYSQL_ASSOC);
                                  // Redirection vers le fichier selectionner
                                  header("location:".$tab['fichier']."");
                                  // fermeture de la connection
                                  mysql_close();
                                  ?>




                                  et ensuite je vais reprendre ton code avec mes liens

                                  Citation : Pas de titre

                                  <?php if( isset($_GET['idlog']))
                                  {
                                  mysql_query("UPDATE logiciels SET nb_telechargement=Messengerpluslive4.11.254.rar + 1 WHERE id=" . $_GET['idlog'] .);
                                  //ici tu metra ce qui envoi le visiteur sur ton fichier avec un header().
                                  }
                                  else
                                  {
                                  echo'download.php?idlog=20 ';
                                  } ?>



                                  tu me diras si c'est ça ou je me trompe
                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  compteur de téléchargement

                                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                  • Editeur
                                  • Markdown