Antivirus offre spéciale - jusqu'à 60 % de réduction avec 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: Feb 14 2015
Pays: Canada, Québec
Status: Inactif
Points: 4636
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é : Sep 14 2017 à 9:24pm
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 - Sep 18 2017 à 4:43pm
Quand on veut mettre quelque chose en ligne, on se fait prendre par quelque chose de gros. <a href="http://denislafrance.net" rel="nofollow">http://denislafrance.net</a>
Haut de la page
brolysan allez vers le bas
Admin Group
Admin Group
Avatar

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

Depuis le: Feb 10 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é : Sep 16 2017 à 7:43am
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: Feb 14 2015
Pays: Canada, Québec
Status: Inactif
Points: 4636
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : Sep 18 2017 à 3:13am
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.
Quand on veut mettre quelque chose en ligne, on se fait prendre par quelque chose de gros. <a href="http://denislafrance.net" rel="nofollow">http://denislafrance.net</a>
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: Feb 14 2015
Pays: Canada, Québec
Status: Inactif
Points: 4636
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : Sep 18 2017 à 2:35pm
Quel est le nom du fichier à télécharger?
Quand on veut mettre quelque chose en ligne, on se fait prendre par quelque chose de gros. <a href="http://denislafrance.net" rel="nofollow">http://denislafrance.net</a>
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: Feb 14 2015
Pays: Canada, Québec
Status: Inactif
Points: 4636
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : Sep 18 2017 à 4:44pm
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.
Quand on veut mettre quelque chose en ligne, on se fait prendre par quelque chose de gros. <a href="http://denislafrance.net" rel="nofollow">http://denislafrance.net</a>
Haut de la page
usuul allez vers le bas
Groupie
Groupie
Avatar

Depuis le: Feb 10 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é : Sep 19 2017 à 8:52am
C'étais le cas trop evident ConfusedConfusedConfusedConfused Merci
Haut de la page
mraskin allez vers le bas
Senior Member
Senior Member


Depuis le: Jan 30 2011
Pays: France
Status: Inactif
Points: 189
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer mraskin Citer  RépondreRéponse Lien Direct à ce Post Envoyé : Sep 24 2017 à 11:01pm
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.
Windows7 - 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 10.18
Copyright ©2001-2014 Web Wiz Ltd.

Cette page a été affichée en 0,031 secondes.
Acheter votre vélo en ligne