php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 01.06.2008, 12:39  
Neuer Benutzer
 
Registriert seit: 31.05.2008
Beiträge: 21
Taigistal befindet sich auf einem aufstrebenden Ast
Standard Download Counter

Hallo, alle zusammen.

Ich wollte auf meiner Seite einen Zähler einbauen. Man kann sich audiodatein runterladen, und nun will ich das der Besucher sieht welche schon besonders viel runtergeladen worden sind.
Wie kann ich das mit php realisieren, ich bin noch ganz grün hinter den Ohren mit php.

Ich hab naürlich auch schon mal gegooglt, was das INet da so zu bieten hat, aber da finde ich nur downloads, und dann auch nur solche, wo ich mir die monatlichen zugriffe, und täglichen, und von leuten aus verdschidenen Ländern usw. anzeigt. ich wollt ja nur die allgemeine downloadanzahl.

Also ein möglich einfaches script, irgendwie eine Variable, die jedesmal hochzählt, wenn die Datei runtergeladen worden ist, hat von euch villeicht jemand so ein script?

schon mal Danke
Taigistal ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 01.06.2008, 12:54  
Benutzer
 
Registriert seit: 26.04.2008
Beiträge: 80
PHP-Kenntnisse:
Fortgeschritten
Potterfans ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Du kannst es ja machen, das der User auf eine Seite weitergeleitet wird, wo erst der Download startet, und da steigt dann der Zähler, kannst es ja mit einem Besucherzähler machen
Potterfans ist offline  
Alt 01.06.2008, 13:20  
Neuer Benutzer
 
Registriert seit: 31.05.2008
Beiträge: 21
Taigistal befindet sich auf einem aufstrebenden Ast
Standard

stimmt schon mal ne gute idee, aber irgendwie ja eigendlich ein unnötiger schritt für den Benutzer, oder?

gibts da nciht noch ne andere Möglichkeit?
Taigistal ist offline  
Alt 01.06.2008, 14:13  
Erfahrener Benutzer
 
Registriert seit: 24.05.2008
Beiträge: 173
PHP-Kenntnisse:
Anfänger
Griffith sorgt für eine eindrucksvolle AtmosphäreGriffith sorgt für eine eindrucksvolle Atmosphäre
Standard

Ich würde eine download.php erstellen.
Diese nimmt über nen GET-Parameter den Downloadnamen oder ne ID an - wie auch immer du das organisiert hast.

Daraus wird der Dateiname und Pfad zum Download ermittelt und der zugehörige Counter erhöht.

Anschließend wird nur noch die Datei gesendet.


PHP-Code:
<?php 
 
// Counter erhoehen

...

// Datei senden

$path 'download/';
$file 'datei.mp3';
 
header('Content-type: '.mime_content_type($file)); 
header('Content-Disposition: attachment; filename="'.$file.'"'); 
readfile($path.$file); 
 
 
?>
</div>
Griffith ist offline  
Alt 01.06.2008, 14:25  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Oder du machst beim klick auf "download" einen AJAX request und zählst dann serverseitig hoch
cycap ist offline  
Alt 01.06.2008, 15:38  
Neuer Benutzer
 
Registriert seit: 31.05.2008
Beiträge: 21
Taigistal befindet sich auf einem aufstrebenden Ast
Standard

ui, das klingt irgendwie zu schwer für mich, wie gesagt, ich bin noch neu in php?

Danke Griffith für deinen Codevorschlag, aber nun hast du ja geschrieben
// Counter erhoehen

muss ich den nicht irgendwo abspeichern, sonst ist der doch beim nächsten benutzer wieder zurückgesetzt oder, oder ist das bei php anders, weil das ne serverseitige sprache ist?


Geändert von Taigistal (01.06.2008 um 15:53 Uhr).
Taigistal ist offline  
Alt 01.06.2008, 16:13  
Erfahrener Benutzer
 
Registriert seit: 24.05.2008
Beiträge: 173
PHP-Kenntnisse:
Anfänger
Griffith sorgt für eine eindrucksvolle AtmosphäreGriffith sorgt für eine eindrucksvolle Atmosphäre
Standard

Ich habe die Stelle leer gelassen, weil ich nicht wei, WIE du es abspeichern willst.

Du kannst den Counter in einer Datenbank speichern, in einzelnen Dateien oder einer Datei, in der alle Counter-Werte stehen.

Oder noch anders...

Das hängt davon ab, wie du deine Downloadseite bisher gestaltet hast.
Griffith ist offline  
Alt 01.06.2008, 17:09  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Hallo!

Also ich habe das bei mir so gelöst!

Das hier ist die load_file.php
PHP-Code:
<?php
//error_reporting(E_ALL);
session_start();
require(
'../config.inc.php');
require(
'../function.inc.php');
$sqlbefehl ="
   Select 
    id,
    loads,
    cat_name,
    file_name,
    file_typ 
   From 
    $tab_dlfiles 
   Where 
    id='"
.(int)$_GET['id']."'
   "
;
$ergebnis mysql_query($sqlbefehl)or die(mysql_error().$sqlbefehl);
$row mysql_fetch_assoc($ergebnis);
$file $row['cat_name']."/".$row['file_name'].$row['file_typ']; 
$sqlbefehl ="
   Update 
    $tab_dlfiles 
   Set 
    loads = loads+1 
   Where 
    id='"
.(int)$row['id']."'
   "
;
$zaehlen mysql_query($sqlbefehl)or die(mysql_error().$sqlbefehl);

header('Content-Description: File Transfer'); 
header('Content-Type: application/octet-stream'); 
header('Content-Disposition: attachment; filename='.basename($file)); 
header('Content-Transfer-Encoding: binary'); 
header('Expires: 0'); 
header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 
header('Pragma: public'); 
header('Content-Length: ' filesize($file));
readfile($file);
?>
Und so verlinke ich auf die load_file.php
PHP-Code:
echo "<a href=\"load_file.php?id=".$row['id']."\">
<img src=\"../grafiken/download.png\" border=\"0\">
</a>"

Ich hoffe der Code hilft dir a bisschen weiter!

mfg der Litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de

Geändert von litterauspirna (02.06.2008 um 18:57 Uhr).
litterauspirna ist offline  
Alt 01.06.2008, 19:53  
Neuer Benutzer
 
Registriert seit: 31.05.2008
Beiträge: 21
Taigistal befindet sich auf einem aufstrebenden Ast
Standard

Also ich hab mich bis jetzt immer von datenbanken fern gehalten und einfach in txt datein abgespeichert.
sagen wir mal eine Datein liegt in dem selben ordner wie meine seite auf der die anzahl der downloads angezeigt werden soll. meinetwegen. downloads.php
und dann ist auf dieser Seite ein lied, meintwegen Audiotest.mp3 jetzt müsst ich also noch eine Seite haben eine txt, in der ich den counterwert abspeicher. ich nehm mal counter.txt, die sich auch im selben Ordner befindet.
Also so stell ich mir das vor, jetzt irgendein counter der hochzählt, usw.
Aber wie würde sowas aussehen?

danke schon mal für eure zahlreichen Antworten.
Taigistal ist offline  
Alt 02.06.2008, 09:15  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Hallo!

Das würde im Prinzip genauso aussehen wie mein Script nur das den Teil mit der DB ersetzen musst mit Funktionen die für das schreiben und lesen und ändern von Dateien gedacht sind.

Denn das Prinzip beleibt das selbe,du hast eine extra Datei die zählt und dann in die txt Datei einträgt und durch den header wirst auf das File was was runtergeladen wird verwiesen.

Was mit Dateien zusammenhängt kann ich dir leider keine Codebeispiele posten weil ich eigentlich nur mit DBs arbeite,tut mir leid!

mfg der Litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Download per paypal verkaufen Andreas08 Scriptbörse 5 29.08.2008 05:54
Download mit Counter Smilerr PHP Tipps 2008 1 04.03.2008 22:44
Download abfrage mijoko PHP Tipps 2007 4 18.06.2007 17:12
Nach Download -> Seite erscheint in HTML-Code Locutus007 PHP Tipps 2006 8 26.05.2006 02:46
Download starten (header funktion), vorher Text ausgeben? Harakiri81 PHP-Fortgeschrittene 19 16.05.2006 21:15
Dateiname bei Download ändern aber wie? CoverDB PHP Tipps 2006 16 20.03.2006 16:40
ein counter - und berechnungen netti PHP Tipps 2005-2 11 24.10.2005 21:03
HILFE! Download Counter funktioniert nicht - Warum? :-( nicobischof PHP Tipps 2005-2 12 21.08.2005 21:15
Download Problem PHP Tipps 2005-2 3 22.07.2005 16:11
[Erledigt] Hilfe bei Download Verwaltungs Script PHP Tipps 2005 8 04.05.2005 10:29
Klick Counter (Download Zähler) PHP Tipps 2005 13 15.04.2005 15:16
Counter funktioniert, aber trotzdem wird Fehler gezeigt ... PHP Tipps 2005 4 07.03.2005 17:56
Dateioperationen und Download kontrollieren Alpha Centauri PHP Tipps 2005 7 02.03.2005 11:52
Counter für registrierte user PHP Tipps 2004-2 3 26.12.2004 11:32
Problem mit einem Counter JeeZ PHP Tipps 2004 6 18.06.2004 13:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php download counter, http://www.php.de/php-tipps-2008/1503-download-counter.html, download zähler php, download counter php, downloadcounter, php besucherzähler, einfacher php downloadcounter, download counter, php counter txt, php besucherzaehler, download-counter php textdatei, downloadcounter php, download mit php realisieren, php counter download, download counter anfänger, downloadcounter php script, simpler download counter, einfacher download counter php, php download counter header text, einfaches downloadzähler script

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:17 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum