AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP] Download-Counter

Ein Thema von MisterNiceGuy · begonnen am 6. Mär 2006 · letzter Beitrag vom 8. Mär 2006
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von MisterNiceGuy
MisterNiceGuy

Registriert seit: 1. Jul 2003
Ort: Mannheim
919 Beiträge
 
Delphi 7 Personal
 
#21

Re: [PHP] Download-Counter

  Alt 6. Mär 2006, 21:41
Ich hab jetzt eine meiner Meinung nach ganz schöne Lösung gefunden

Code:
<?php  
  switch ($_GET['file']) { 
    case 1:$NewHeader="EMail_Checker_setup.exe"; break;
    ...
    case 28:$NewHeader="MrOnline_zip.zip"; break;
  } 
  header('Location: Programme/'.$NewHeader);
  $db_link = @mysql_connect("localhost", "***", "***");            
  mysql_select_db("usr_web89_1");
  $dlid=$_GET['download'];
  mysql_query("UPDATE dlcounter Set counter = counter+1 WHERE id=$dlid");
?>
Dabei wird die jeweilige Fileid und die Downloadid übergeben, bespielsweise mit einem Aufruf wie diesem:
Code:
[url]www.schnick.de/hallo.php?file=1&download=2[/url]
Jonas
Wenn mich jemand sucht, ich bin im Kühlschrank!

Informationen über das Duale Studium
www.jofre.de
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#22

Re: [PHP] Download-Counter

  Alt 7. Mär 2006, 13:53
Und warum nimmst du nicht die FileID gleich mit als DownloadID?
Dann hast du die gleiche ID in der DB und PHP(switch).

Außerdem vergiß das intval nicht, da man dir sonst über die ID($dlid) ganz netten Code in die DB einschleusen könnte

Code:
<?php  
  switch ($_GET['file']) {
    case 1:$NewHeader="EMail_Checker_setup.exe"; break;
    ...
    case 28:$NewHeader="MrOnline_zip.zip"; break;
  } 
  header('Location: Programme/'.$NewHeader);
  $db_link = @mysql_connect("localhost", "***", "***");            
  mysql_select_db("usr_web89_1");
  $dlid=intval($_GET['file']);
  mysql_query("UPDATE dlcounter Set counter = counter+1 WHERE id=$dlid");
?>
www.schnick.de/hallo.php?file=1


Und wenn du nicht ständig an der PHP und der DB rumspielen willst, wenn du was hinzigefügt/gelöscht/geändert hast, dann mach doch alles in die DB, also
ID | Dateiname | Counter


Ach ja, es macht sich auch nicht schlecht, wenn du noch prüfst, ob es die gewünschte ID überhaupt gibt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von MisterNiceGuy
MisterNiceGuy

Registriert seit: 1. Jul 2003
Ort: Mannheim
919 Beiträge
 
Delphi 7 Personal
 
#23

Re: [PHP] Download-Counter

  Alt 7. Mär 2006, 14:08
Naja ich hab immer ein Setup und eine Zip von jedem Programm. Ich biete also 28 Downloads an, aber ich zähle nicht jede einzelne Datei im Counter sondern jedes Programm. Deswegen 2 Variablen.

Das mit dem intval wusste ich nicht, danke
Jonas
Wenn mich jemand sucht, ich bin im Kühlschrank!

Informationen über das Duale Studium
www.jofre.de
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#24

Re: [PHP] Download-Counter

  Alt 8. Mär 2006, 11:30
Zitat von MisterNiceGuy:
Das mit dem intval wusste ich nicht, danke
Büdde

Zitat von MisterNiceGuy:
Naja ich hab immer ein Setup und eine Zip von jedem Programm. Ich biete also 28 Downloads an, aber ich zähle nicht jede einzelne Datei im Counter sondern jedes Programm. Deswegen 2 Variablen.
Also dafür gäbe es 2 mindestens Lösungen ...
entweder man rechnet die Counter der beiden Dateien bei der Ausgabe/Auswertung zusammen (hat aber zwei Counter),

oder man könnte natürlich immernoch Runden und dergleichen
Code:
<?php  
  switch ($_GET['file']) {
    case 0: $NewHeader = "EMail_Checker_setup.exe"; break;
    case 1: $NewHeader = "EMail_Checker_zip.zip"; break;
    ...
    case 26: $NewHeader = "MrOnline_setup.exe"; break;
    case 27: $NewHeader = "MrOnline_zip.zip"; break;
  }
  header('Location: Programme/'.$NewHeader);
  $db_link = @mysql_connect("localhost", "***", "***");
  mysql_select_db("usr_web89_1");
  mysql_query("UPDATE dlcounter Set counter = counter+1 WHERE id=" . [i][b](intval($_GET['file']) & ~1)[/b][/i]);
  @mysql_close($db_link);
?>
Also
Datei 0 und 1 = Counter 0
Datei 2 und 3 = Counter 2
Datei 4 und 5 = Counter 3
...


oder wie wäre es mit dividieren °_°
Code:
  mysql_query("UPDATE dlcounter Set counter = counter+1 WHERE id=" . [i][b]floor(intval($_GET['file']) / 2)[/b][/i]);
?>
Also
Datei 0 und 1 = Counter 0
Datei 2 und 3 = Counter 1
Datei 4 und 5 = Counter 2



Ach ja, wenn du eh nicht die DB wieder schließt, dann brauchst du auch nicht die Verbindungs-Kennung in $db_link zu speichern
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von MisterNiceGuy
MisterNiceGuy

Registriert seit: 1. Jul 2003
Ort: Mannheim
919 Beiträge
 
Delphi 7 Personal
 
#25

Re: [PHP] Download-Counter

  Alt 8. Mär 2006, 12:09
Tja man merkt wohl, dass ich noch ziemlich neu in diesem Metier bin
Also Frage: Wenn ich 1 durch 2 Teile, was bekomme ich bei PHP für ein Ergebnis? 1? Das wäre ja ideal!
Hatte ich auch anfangs drüber nachgedacht, aber wieder verworfen, da ich mir nicht im Klaren darüber war, was diese Rechnung ergeben würde.

Die Datenbank schiließen? Mach ich doch glatt
Jonas
Wenn mich jemand sucht, ich bin im Kühlschrank!

Informationen über das Duale Studium
www.jofre.de
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#26

Re: [PHP] Download-Counter

  Alt 8. Mär 2006, 12:24
1 / 2 = 0.5

also abgerundet (floor) = 0, oder aufgerundet (ceil) = 1

und gerundet (round) ... weiß gerade nicht, oder PHP im gegensatz zu Dlphi mathematisch korret rundet, aber 0.5 sollte wohl auch 1 ergeben
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#27

Re: [PHP] Download-Counter

  Alt 8. Mär 2006, 12:25
Hallo,
Zitat von MisterNiceGuy:
Wenn ich 1 durch 2 Teile, was bekomme ich bei PHP für ein Ergebnis? 1? Das wäre ja ideal!
Nö, Du bekommst 0.5. Durch floor() rundest Du nach unten ab -> Null.

Gruß
xaromz
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz