BullGuard Antivirus Sale - 60% Off with openElement !
Accueil Forum Accueil Forum >

openElement

> Tutoriaux utilisateurs
  Nouveaux messages Nouveaux messages Fil RSS  - [Tuto]Créer un compteur de téléchargements sans bd
  FAQ FAQ  Rechercher dans le Forum   Inscription Inscription  Connexion Connexion

[Tuto]Créer un compteur de téléchargements sans bd

 Répondre Répondre
Auteur
Message
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6508
Options des messages Options des messages   Thanks (2) Thanks(2)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Sujet: [Tuto]Créer un compteur de téléchargements sans bd
    Envoyé : 14 Sep 2017 à 22:24
Voici une méthode pour créer un compteur de téléchargements.  

Cette méthode reprend en partie les instructions données par MicroVinc dans le billet suivant: 


Étape 1

Mettre le fichier à télécharger à la racine de votre site, ne pas mettre d'espace dans le nom du fichier à télécharger

Étape 2

Créer un fichier texte et insérez-y le code suivant:

<?php
if(isset($_GET['fichier'])) {
if ( is_file($_GET["fichier"] . '.txt') ) {  // si le fichier txt existe
$FileContent = fopen($_GET['fichier'] . '.txt', 'r+' ); // ouverture du fichier en lecture et écriture 
                $hit = fgets( $FileContent ); // récupération de la valeur
                $hit = intval( $hit ); // on vérifie qu’il s’agisse bien d’un nombre
                $hit++; // ajout de 1 au nombre de hits
                fseek( $FileContent, 0 ); // réinitialisation du curseur
                fputs( $FileContent, $hit ); // écriture dans le fichier
                fclose( $FileContent ); // fermeture du fichier
else
{
// si le fichier txt existe pas
$FileContent = fopen($_GET['fichier'] . '.txt', 'w+' ); // créer le fichier et ouverture du fichier en lecture et écriture
fputs( $FileContent, 1 ); // mettre le compteur à 1
fclose( $FileContent ); // fermeture du fichier
}
}
?>

Puis sauvegardez-le à la racine de votre site sous le nom de Comptage_Lien.php  

Étape 3

Créez un bouton de transfert en utilisant soit une "Image lien" soit un "Bouton lien"

Ajoutez-lui la classe perso "MaClass1"

Configurez le lien en mode LOCAL et ne mettez que le nom complet du fichier



Étape 4

Créez un bloc de code javascript en endbody et insérez-y le code suivant:

$( ".MaClass1" ).click(
function() {
var MonLien = $(this).find('a').attr('href'); // Extraire le lien vers le fichier
var LongLien = MonLien.length; // Longueur dela chaîne de caractères
var NomPos=MonLien.lastIndexOf("/")+1; // Début de nom du fichier
if (NomPos<1){NomPos=0};
var PointPos=MonLien.lastIndexOf("."); // Début de l'extension du nom du fichier
if (PointPos<1){PointPos=LongLien};
var Fichier = 'fichier=' + MonLien.substring(NomPos,PointPos); // Extraire le nom du fichier
$.ajax({
url : 'Comptage_Lien.php', // La ressource ciblée
type : 'GET', // Le type de la requête HTTP.
data : Fichier
});
location.reload(true);
}
);

Faites une mise à jour complète de votre site pour y transférer tous les fichiers ou utilisez Filezilla sur les fichiers spécifiques.

Vous obtiendrez un fichier du même nom que le fichier téléchargé mais avec l'extension ".txt" c'est là que le compteur est mis à jour.


=====================================================

Révision 1, ajout d'une note sur les espaces dans les noms de fichiers à l'étape 1, par Hobby001 2017-09-18


Edité par Hobby001 - 18 Sep 2017 à 17:43
Haut de la page
brolysan allez vers le bas
Admin Group
Admin Group
Avatar

Depuis le: 14 Août 2009
Pays: France
Status: Inactif
Points: 10144
Options des messages Options des messages   Thanks (1) Thanks(1)   Citer brolysan Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 15 Sep 2017 à 08:53
Super tuto Clap
Haut de la page
usuul allez vers le bas
Groupie
Groupie
Avatar

Depuis le: 10 Feb 2016
Status: Inactif
Points: 49
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer usuul Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 16 Sep 2017 à 08:43
Clap Merci Clap

fonctionne mais le compteur reste à 1 il me semble que le "else" réinitialise le compteur Ermm

Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6508
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 18 Sep 2017 à 04:13
Sur mon petit demo, j'affiche les compteurs de façon très rudimentaire, vous pouvez voir que si vous suivez bien les instructions, les compteurs s'incrémentent.

Si vous n'y arrivez pas donnez-nous un lien que l'on puisse voir.
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6508
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 18 Sep 2017 à 15:35
Quel est le nom du fichier à télécharger?
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6508
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 18 Sep 2017 à 17:44
Si le nom du fichier à télécharger comporte un ou des espaces, la portion php ne fonctionne pas donc le compteur ne fonctionne pas.
Haut de la page
usuul allez vers le bas
Groupie
Groupie
Avatar

Depuis le: 10 Feb 2016
Status: Inactif
Points: 49
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer usuul Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 19 Sep 2017 à 09:52
C'étais le cas trop evident ConfusedConfusedConfusedConfused Merci
Haut de la page
mraskin allez vers le bas
Senior Member
Senior Member


Depuis le: 30 Jan 2011
Pays: France
Status: Inactif
Points: 207
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer mraskin Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 25 Sep 2017 à 00:01
Bonsoir,

merci pour ce tuto !!! 

Je l'ai essayé, et ça a marché du premier coup Thumbs Up 
Je l'ai donc mis en place sur mon site qui, en ce moment, comporte 3 fichiers PDF que l'on peut télécharger.

Michel.
Windows10 - 64b
Haut de la page
 Répondre Répondre
  Partagez ce sujet   

Aller au Forum Permissions du forum allez vers le bas

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

Cette page a été affichée en 0.063 secondes.