Création
d'entreprise
Posez votre question Signaler

Compteur sur free

stajem 367Messages postés 23 août 2007Date d'inscription 20 juin 2011Dernière intervention - Dernière réponse le 8 nov. 2007 à 18:43
Bonjour à tous !
Me revoici avec un nouveau problème qui me tient à coeur depuis qq temps ( 3 ans...).
Je me suis à nouveau reconfronté à celui hier :
Je viens de créer un site perso sans gros intéret, (je me suis d'ailleurs pas géné de le faire avec toweb...et oui à ce point^^). Mais je compte y mettre un compteur de téléchargement pour connaitre à quels fichiers seront le plus télécharger (bien sur ^^).
Je sais pas trop comment faire, je veux y mettre mon compteur (tout con en lettre "style : 2331"). Je sais pas comment faire...Je sais que certains y sont arrivés...on parle de chmod...ect moi je tilte rien...ou pas grand chose
Lire la suite 

Compteur sur free »

2 réponses
Réponse
+0
moins plus
Pour cela, il faut que tu connaisses un peu php/sql ... sans quoi tu n'y arrivera pas.
Voici un exemple de script permettant de télécharger une image, et de compter le nombre de téléchargements :

1) La table mysql:
# Création d'une table pour un petit album photo 

CREATE TABLE Album 
(id           INTEGER AUTO_INCREMENT NOT NULL,
   description  TEXT,
   compteur      INTEGER DEFAULT 0,
   PRIMARY KEY (id)
)
;

2) Le code html (un lien dans lequel tu attribues l'identifiant du fichier - ici ce sera la photo n°14) :
<a href='ChargerPhoto.php?id=14'>Télécharger cette photo</a>

Bien évidemment, l'idéal est de gérer la liste des fichiers à télécharger de façon dynamique en les lisant dans la table...

3) Le fichier ChargerPhoto.php :
<?php

// Variables
define ('LOGIN',"ton_login");
define ('MDP',"ton_mdp");
define ('SERVEUR',"ton_serveur_sql");
define ('BASE', "ta_base");

function Connexion ($Nom, $MotDePasse, $Base, $Serveur)
	{
	 // Connexion au serveur : erreur
	 $connexion = mysql_connect ($Serveur, $Nom, $MotDePasse);
	 
	 if (!$connexion)
		{
		 echo "Désolé, la connexion au serveur " . $Serveur . " est imposible.\n";
		 exit;
		}
	 
	 // Connexion à la base de données : erreur
	 if (!mysql_select_db ($Base, $connexion))
		{
		 echo "Désolé, la connexion à la base " . $Base . " est impossible.<br />\n";
		 echo "Message de MySQL : " . mysql_error($connexion);
		 exit;
		}
	 
	 // On renvoie la variable de connexion
	 return $connexion;
	}

function ExecRequete ($requete, $connexion)
	{
	 $resultat = mysql_query ($requete, $connexion);
	 
	 if ($resultat)
		 return $resultat;
	 else
		{
		 echo "Erreur dans l'éxécution de la requête '$requete'.<br />\n";
		 echo "Message de MySQL : " . mysql_error($connexion);
		 exit;
		}
	}


  // Téléchargement d'une photo identifiée par $_GET['id']
  // On commence par incrémenter le compteur

  $connexion = Connexion (LOGIN, MDP, BASE, SERVEUR);
  $requete =  "UPDATE Album SET compteur=compteur+1 "
            . "WHERE id='{$_GET['id']}'";
  $resultat = ExecRequete ($requete, $connexion);

  //  On envoie un en-tête forçant le transfert (download)

  $fichier = "PHOTOS/" . $_GET['id'] . ".jpg"; // Dans cet exemple, tous les fichiers sont dans le répertoire "PHOTOS" et leur nom est identique à leur identifiant, suivi de .jpg
  header ("Content-type: application/force-download");
  header ("Content-disposition: filename=$fichier");

  // Après l'en-tête on transmet le contenu du fichier lui-même
  readFile ($fichier); 

?>

Ajouter un commentaire
Réponse
+0
moins plus
merci pour ta réponse rapide. Je regarde ça et je te tiens au courant !

@+
Ajouter un commentaire
Ce document intitulé « compteur sur free » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?