Download został wykonany w postaci wy¶wietlania nazw plików z listy rozwijanej i skryptu php, który pobiera index z tej listy i wykonuje download pliku na podstawie nazwy pliku z bazy mysql.
Tworzymy listę rozwijan± w postaci:
<form action="download.php" method="post" enctype="multipart/form-data">
<select name="files_id" size="" style="font-size: 12px; width: 100%;">
<option value="5800">Bliżej Sukcesu</option>
<option value="4974">Bogać się, kiedy ¶pisz</option>
<option value="5792">Bogaty Ojciec Biedny Ojciec dla młodzieży</option>
<option value="5076">Bohater własnego życia</option>
</select><br /><br />
<input id="load" type="submit" value="Pobierz" />
</form><br />
Skrypt download.php :
<?php $nr = $_POST["files_id"]; $nhost = "localhost"; // nazwa serwera mysql $nbaza = "baza"; // nazwa bazy $nuser = "user"; // nazwa użytkownika bazy $npassword = "password"; // hasło użytkownika bazy $baza = mysql_connect($nhost, $nuser, $npassword); if ($baza) { $wynik = mysql_select_db($nbaza,$baza); if ($wynik) { $wynik = mysql_query("SELECT nazwa FROM tytuly WHERE id=$nr"); if (($wynik)and(mysql_num_rows($wynik)>0)){ $pole=mysql_fetch_array($wynik); $nazwa = $pole["nazwa"]; $filePath = "pliki/"; // nazwa katalogu z plikami, np.: pliki/ $fileName = "$nazwa"; // przekazuje nazwę pliku z bazy np.: Blizej_sukcesu.pdf $fd = fopen($filePath.$fileName,"r"); $size = filesize($filePath.$fileName); $contents = fread($fd, filesize($filePath.$fileName)); fclose($fd); header("Content-Type: application/octet-stream"); header("Content-Length: $size;"); header("Content-Disposition: attachment; filename=$fileName"); echo $contents; } mysql_close($baza); } } ?>
Tworzymy bazę mysql baza, a w niej tabelę np. tytuly z polami, np. id typu int(4) i nazwa typu varchar(100).