17. august 2005 - 11:42Der er
27 kommentarer og 1 løsning
download af MP3 fil
Hejsa
Jeg har brugt følgende script med succes:
$result = mysql_query("SELECT * FROM Musik_data WHERE id = '$id'") or die(mysql_error); $row = mysql_fetch_array($result); $fil = $row['Musik_sti']; header("Content-Type: application/octet-stream"); header("Content-Disposition: attachment; filename='" . basename($fil) . "'"); header("Content-Length: " . filesize($fil)); readfile($fil);
Men har nu fået det problem, at efter jeg har flyttet server og ændret scriptet til at finde musik numret efter id så downloader den ikke musik numret som en mp3 fil, men som eksemplet viser her: 'saftsuseme æ op og flyv.mp3' den sætter enkelt kolon omkring og det er åbenbart ikke selve filen hvad kan problemet være?
Jeg ved det ikke præcist, men prøv at ændre denne linie: header("Content-Disposition: attachment; filename='" . basename($fil) . "'"); Til dette: header("Content-Disposition: attachment; filename=" . basename($fil));
feltet Musik_sti i databasen indeholder stien til musik numret som kan se således ud. /music/saftsuseme æ op og flyv.mp3 men jeg vil da lige prøve en uden speciel tegn.
<br /> <b>Warning</b>: filesize(): Stat failed for /music/1103204713.mp3 (errno=2 - No such file or directory) in <b>F:\web\tonnyaabo.dk\download.php</b> on line <b>12</b><br /> <br /> <b>Warning</b>: Cannot modify header information - headers already sent by (output started at F:\web\tonnyaabo.dk\download.php:12) in <b>F:\web\tonnyaabo.dk\download.php</b> on line <b>12</b><br /> <br /> <b>Warning</b>: Cannot modify header information - headers already sent by (output started at F:\web\tonnyaabo.dk\download.php:12) in <b>Fd:\web\tonnyaabo.dk\download.php</b> on line <b>13</b><br /> <br /> <b>Warning</b>: readfile(/music/1103204713.mp3): failed to open stream: No such file or directory in <b>F:\web\tonnyaabo.dk\download.php</b> on line <b>15</b><br />
Har du prøvet med test.mp3? Altså læg en mp3-fil der hedder "test.mp3" i roden af dit site, og indsæt scriptet præcist som jeg har skrevet det herover i download.php? Få lige det til at virke først.
Resten skal enten udkommenteres eller slettes helt. Den melder først og fremmest om en fil, vi ikke nævner i scriptet, samt om en fejl på linie 12, hvilken slet ikke bør eksistere... Så prøv lige at slet eller udkommenter alt andet i download.php, og prøv så igen.
Ikke hos mig. Prøv selv: http://www.hooratios.dk/test.php - Den indeholder de 5 liniers kode, jeg har skrevet ovenover - og det virker fint i både Opera, IE og Mozilla...
Når du først har fået det til at virke korrekt, hvor du selv angiver filnavnet, kan du jo blot smække database-kaldet på igen... Men vær lige obs på, om det gør en forskel, at der er "/" i starten af stien i databasen, og ikke når du har skrevet den manuelt. Jeg gør dette til et svar, og ser dit problem som løst.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.