Supportnet / Forum / Skripte(PHP,ASP,Perl...)
php-script
Frage
Nach nun gut einer Stunde suchen habe ich immer noch nicht das passende Download-Counter Script gefunden. Auf Seiten wie php-archiv oder php-welt usw. gibt es leider nur Scripts, die MySQL brauchen und n Adminmenü haben und IP sperre und statistik und son kram...
Ich brauche lediglich ein winziges script, dass bei jedem Klick den Downloadzäher-Wert um 1 erhöht und dann den Download startet!
Ich möchte nur EINE EINZIGE Datei zum download anbieten. mehr nicht!
Die index.php sieht wie folgt aus:
<table width="30%" cellspacing="1" cellpadding="5" class="bodyline">
<tr>
<td width="50%" bgcolor="#FF0000">
<p>Datei-Download</p>
</td>
</tr>
<tr valign="top">
<td width="50%" bgcolor="#20242D">
<center>
<form action="download.php" method="post">
<input type="submit" name="go" value="DOWNLOAD NOW" class="sbutton">
</form>
</center>
<p>
Filesize: 300MB<br>
Downloads: HIER DIE ANZAHL<br>
Status: <font color="green"><b>online</b></font> </p>
</td>
</tr>
</table>
Bei einem Klick auf den Button "Download Now" soll die Datei 'x.rar' runtergeladen werden und gleichzeitg der Wert für 'Downloads' um 1 erhöht werden!
Jetzt braucht ich ja noch die download.php und irgendwas, womit ich den Wert der Downloads in die index.ph einbinden kann!
Jedoch habe ich keine Ahnung wie das geht und deshalb bin ich auf eure Hilfe angewiesen!
Danke im Voraus!
Antwort 1 von Nessus
Hi,
PHP ohne DB macht keinen richtigen Spaß.
http://www.php-faq.de/q/q-code-klick-zaehler.html
HTH
Nessus
PS: Das script ist recht einfach aufgebaut und ohne weiteres an ein Textfile anzupassen
PHP ohne DB macht keinen richtigen Spaß.
http://www.php-faq.de/q/q-code-klick-zaehler.html
HTH
Nessus
PS: Das script ist recht einfach aufgebaut und ohne weiteres an ein Textfile anzupassen
Antwort 2 von ThomasNr1
Hi,
mir soll es ja auch keinen Spass machen ^^.
Den Counter kann ich nicht umbauen auf Textfiles, da ich keinerlei Wissen für PHP hab.
mir soll es ja auch keinen Spass machen ^^.
Den Counter kann ich nicht umbauen auf Textfiles, da ich keinerlei Wissen für PHP hab.
Antwort 3 von Nessus
Wenn Du keine Ahnung von PHP hast (macht ja auch nichts....), ist das ein netter Anfang um damit beginnen.
Hier wird bei Problemen gerne geholfen, aber bei Sachen getreu dem Motto: Ich habe keine Zeit/Lust-mach mal wirst Du auf Granit beißen.
Nessus
Hier wird bei Problemen gerne geholfen, aber bei Sachen getreu dem Motto: Ich habe keine Zeit/Lust-mach mal wirst Du auf Granit beißen.
Nessus
Antwort 4 von FrankieH
@Nessus - in diesem Fall muss ich Thomas Recht geben - für so ein Mini-Progrämmchen braucht man nicht MySQL, er will ja nur einen Integer-Wert irgendwo auf seiner Platte ablegen, diesen nichct sortieren oder statistisch auswerten. *l*
@ThomasNr1 - leider sind Programmierer-Stunden recht teuer. Und Nessus liegt schon richtig, dass man an so einem Beispiel super lernen kann.
Hier mal ins unreine ohne zu testen, wie ich anfangen würde:
So - und getDownloadCounter() verwendest Du dann, um die Anzahl in Deiner index.php einzublenden.
Und Deine download.php-Seite machst Du jetzt alleine. Ist ja nicht mehr schwer - schreibst eine Funktion incAndStoreCounter(), die so aufgebaut ist wie getDownloadCounter(), vorher diese aufruft, um den Zählerstand einzulesen, diesen um einen erhöht und dann wieder in dei Datei schreibt. Dazu die Datei zum Schreiben öffnen und mit fputs arbeiten.
Viel Erfolg, (Spaß magst Du ja nicht *g*)
Frank
@ThomasNr1 - leider sind Programmierer-Stunden recht teuer. Und Nessus liegt schon richtig, dass man an so einem Beispiel super lernen kann.
Hier mal ins unreine ohne zu testen, wie ich anfangen würde:
<?php
function getFileName()
{
return(sprintf("%s/userData/downloadcounter", $_SERVER["DOCUMENT_ROOT"]));
}
function getDownloadCounter()
{
$dCount = 0;
$fName = getFileName();
if(file_exists($fName)) {
$fp = fopen($fName, "r");
if($fp) {
$dCount = fgets($fp, 16);
fclose($fp);
}
}
return($dCount);
}
?>
So - und getDownloadCounter() verwendest Du dann, um die Anzahl in Deiner index.php einzublenden.
<?php
printf("Downloads: %d <br>\n", getDownloadCounter());
?>
Und Deine download.php-Seite machst Du jetzt alleine. Ist ja nicht mehr schwer - schreibst eine Funktion incAndStoreCounter(), die so aufgebaut ist wie getDownloadCounter(), vorher diese aufruft, um den Zählerstand einzulesen, diesen um einen erhöht und dann wieder in dei Datei schreibt. Dazu die Datei zum Schreiben öffnen und mit fputs arbeiten.
Viel Erfolg, (Spaß magst Du ja nicht *g*)
Frank

