Ga naar inhoud

Download teller


anoniem

Aanbevolen berichten

Als je alleen het aantal downloads wil weten waarom lees je je webserver logfiles dan niet uit (via een logfile analyzer)? Als je alle downloads in dezelfde folder zet moet dit toch wel makkelijk te extraheren zijn uit je webstatistieken. Een andere oplossing is om alle downloads in een table te zetten, bijv: [code:1:b3bfe2c398] TABLE downloads - downloadId - fileDescription - fileLocation - downloadCounter [/code:1:b3bfe2c398] Bij de opbouw van de pagina doorloop je de table in een lus en schrijf je linkjes weg naar een tellerscript waar je de id van de file aan meegeeft (in de querystring). En in het tellerscript verhoog je de downloadCounter [code:1:b3bfe2c398] UPDATE downloads SET downloadCounter = downloadCounter + 1 WHERE downloadId = $Id [/code:1:b3bfe2c398] Waarbij $Id de waarde uit de querystring is. Daarna vraag je de filelocation op uit de database zodat je daar naartoe kan redirecten. [code:1:b3bfe2c398] <?php // .... rest van code Header ("Location: " . $LocationFromDatabase); ?> [/code:1:b3bfe2c398] p.s. alles pseudo-code en ongetest
Link naar reactie
Sorry, maar ik kom er niet helemaal uit :oops: Misschien kun je mijn scriptje even aanpassen?? Dit is mijn SQL-code: [code:1:706e3bb6b8] CREATE TABLE downloads ( download_id int(11) NOT NULL auto_increment, categorie varchar(100) NOT NULL default '', titel varchar(100) NOT NULL default '', beschrijving tinytext NOT NULL, link tinytext NOT NULL, downloadcounter int(11) NOT NULL default '0', PRIMARY KEY (download_id) ) TYPE=MyISAM; [/code:1:706e3bb6b8] En dit is de code van de downloads pagina(downloads.php) [code:1:706e3bb6b8] <html> <head> <style type="text/css"> <!-- a:link { text-decoration: none;color:#000000} a:hover { text-decoration: none; color:red} --> </style> <!-- @import "downloads.css" --> <?php $database_server = mysql_connect('localhost', username', 'password'); // Selecteer de 'werk'-database mysql_select_db("downloads", $database_server); // Selecteer downloads waar id = groter dan 0 $sql = "SELECT * FROM downloads WHERE download_id > 0"; // Voer die query uit $resultaat = mysql_query($sql); // Aantal rijen $aantal = mysql_num_rows($resultaat); echo "<center>Er zijn <b>$aantal</b> downloads:<P></center><hr>\n"; // Maak een lus om alle items te laten zien while ($record = mysql_fetch_object($resultaat)) { echo "<b>$record->phpBB2</b> <center> <table border='1' bordercolor='red' width='100%' bgcolor='#D1D1D1'> <tr> <td width='10%'> <B>Categorie:</B> $record->categorie</td><td> <A HREF='$record->link'><IMG SRC='images/download' border=0 alt='Download!'>$record->titel</A> </td> </tr> <tr> <td width='50%'> <IMG SRC='images/desc' alt='Description'>$record->beschrijving<br> </td> </tr> </table> </center> <hr>\n"; } ?> </head> </html> [/code:1:706e3bb6b8] Alvast hartelijk bedankt. Groetjes, Rens_uit_His
Link naar reactie
[quote:7f8cf41827="Rens_uit_His"] En dit is de code van de downloads pagina(downloads.php) [code:1:7f8cf41827] <html> <head> <style type="text/css"> <!-- a:link { text-decoration: none;color:#000000} a:hover { text-decoration: none; color:red} --> </style> <!-- @import "downloads.css" --> <?php $database_server = mysql_connect('localhost', username', 'password'); // Selecteer de 'werk'-database mysql_select_db("downloads", $database_server); // Selecteer downloads waar id = groter dan 0 $sql = "SELECT * FROM downloads WHERE download_id > 0"; // Voer die query uit $resultaat = mysql_query($sql); // Aantal rijen $aantal = mysql_num_rows($resultaat); echo "<center>Er zijn <b>$aantal</b> downloads:<P></center><hr>\n"; // Maak een lus om alle items te laten zien while ($record = mysql_fetch_object($resultaat)) { echo "<b>$record->phpBB2</b> <center> <table border='1' bordercolor='red' width='100%' bgcolor='#D1D1D1'> <tr> <td width='10%'> <B>Categorie:</B> $record->categorie</td><td> <A HREF='$record->link'><IMG SRC='images/download' border=0 alt='Download!'>$record->titel</A> </td> </tr> <tr> <td width='50%'> <IMG SRC='images/desc' alt='Description'>$record->beschrijving<br> </td> </tr> </table> </center> <hr>\n"; } ?> </head> </html> [/code:1:7f8cf41827] [/quote:7f8cf41827] Dit ziet eruit als een stukje code wat download-gegevens uit een database haalt, zoals url en beschrijving. Allereerst moet je bovenaan bij: [code:1:7f8cf41827]$database_server = mysql_connect('localhost', username', 'password'); [/code:1:7f8cf41827] je gebruikersnaam en wachtwoord invullen. Je moet je code zo aanpassen dat als er op een download geklikt wordt hij een pagina aanroept waar hij eerst de teller ophoogt, endaarna de file download. (zie de code van Annie) Krijg je nu uberhaupt iets te zien op je scherm, of kan hij geen verbinding maken met de database? suc6
Link naar reactie
@ mr. 18: Van die host, naam en pass snap ik, ik heb het scriptje zelf geschreven :-? [quote:92ddef9014="Mr.18"] Je moet je code zo aanpassen dat als er op een download geklikt wordt hij een pagina aanroept waar hij eerst de teller ophoogt, endaarna de file download. (zie de code van Annie) [/quote:92ddef9014] Hier gaat het mij juist om, ik weet niet precies hoe ik die code aan moet passen.
Link naar reactie
ehm... wat je kan doen is dit... vraag een nedstat teller aan. en kijk hier eens naar: [code:1:9dc77a6135] <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> <script> function blaat() { document.getElementById('nedstat_teller').style.display='inline'; } </script> </head> <body> <a href="download.zip" onclick="blaat()">ik ben een download</a> <span id="nedstat_teller" style="display:none; visibility:hidden;"> <!-- Begin Nedstat Basic code --> PLAK HIER DUS JE NEDSTAT TELLER CODE.... <!-- End Nedstat Basic code --> <span> </body> </html> [/code:1:9dc77a6135] [b:9dc77a6135]edit: de nedstat teller wordt pas geladen op het moment dat er op de download link geklikt wordt[/b:9dc77a6135] t.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...