mp3 in download script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Nicky van boven

nicky van boven

12/07/2006 19:34:00
Quote Anchor link
Hey allemaal,

Ik gebruik dit script: http://www.phphulp.nl/php/scripts/7/244/

code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$fullPath
="http://www.madpaintball.co.uk/userfiles/punjabi_lose_yourself.mp3";
if ($fd = fopen ($fullPath, "r")) {
    $path_parts = pathinfo($fullPath); //ver 1.02 uses pathinfo now
    $ext = strtolower($path_parts["extension"]); //ver 1.01: Added the stringconv. to handle also extensions with caps
    switch ($ext) {
        case
"pdf":
        header("Content-type: application/pdf"); // add here more headers for diff. extensions
        header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\""); // use 'attachement' to force a download
        break;
        default;

        header("Content-type: application/octet-stream");
        header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
    }

    header("Cache-control: private"); //use this to open files directly
    while(!feof($fd)) {
        $buffer = fread($fd, 2048);
        echo $buffer;
    }
}

fclose ($fd);
exit;
?>


waarom krijg ik deze error:
Warning: fopen(http://www.madpaintball.co.uk/userfiles/punjabi_lose_yourself.mp3) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\server\Apache2\htdocs\download.php on line 24

Warning: fclose(): supplied argument is not a valid stream resource in C:\server\Apache2\htdocs\download.php on line 42
 
PHP hulp

PHP hulp

17/11/2024 11:46:12
 
Han eev

Han eev

12/07/2006 19:38:00
Quote Anchor link
Je kan geen externe files openen of het bestand bestaat niet.
 
Nicky van boven

nicky van boven

12/07/2006 19:41:00
Quote Anchor link
het bestand bestaat wel, kijk maar;
http://www.madpaintball.co.uk/userfiles/punjabi_lose_yourself.mp3

maar hij denkt dus dat ie niet bestaat :s hoe kan dat ?

EDIT: ik draai op localhost, is dat het ?
Gewijzigd op 01/01/1970 01:00:00 door nicky van boven
 
Nicky van boven

nicky van boven

12/07/2006 19:44:00
Quote Anchor link
Moet er misschien een content type in het script speciaal voor mp3's ?
 
Twan

Twan

12/07/2006 19:50:00
Quote Anchor link
ik kan die link niet openen :S
of ligt dat aan mij?? :P
 
PHP erik

PHP erik

12/07/2006 19:58:00
Quote Anchor link
Waarschijnlijk staan je fopen wrappers niet aan en kun je geen URLs invoeren. Je moet dus het lokale path opgeven en niet HTTP.
 
Nicky van boven

nicky van boven

12/07/2006 20:00:00
Quote Anchor link
ik citeer uit mn php.ini:

; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
allow_url_fopen = On

hij moet het dan doen toch ?
 
Nicky van boven

nicky van boven

12/07/2006 20:04:00
Quote Anchor link
ligt het misschien aan mijn firewall ?

EDIT:
Heb hem uitgezet, zelfde effect. -.0
Gewijzigd op 01/01/1970 01:00:00 door nicky van boven
 
Nicky van boven

nicky van boven

12/07/2006 20:07:00
Quote Anchor link
Twan:
ik kan die link niet openen :S
of ligt dat aan mij?? :P


Dat ligt aan je pc..
 
Nicky van boven

nicky van boven

12/07/2006 20:12:00
Quote Anchor link
lol echt een PHP-raadsel :p
 
Han eev

Han eev

12/07/2006 20:16:00
Quote Anchor link
Test eens eerst wat dingen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?PHP
header("Content-Type: plain/text");
echo file_get_contents($fullpatt);
?>

Wat krijg je nu?

Als het fouten zijn, los die op als dat wel werkt gebruik dit dan ipv fopen
Gewijzigd op 01/01/1970 01:00:00 door Han eev
 
Nicky van boven

nicky van boven

12/07/2006 20:20:00
Quote Anchor link
het werkt o.0 er word gevraagd of ik download.php wil downloaden en als ik het rename naar download.mp3 werkt het ! :-O
 
Nicky van boven

nicky van boven

12/07/2006 20:26:00
Quote Anchor link
er ging iets mis..

ik probeerde filegetcontents in het script te implementeren, en toen deed ie het wel maar toen downloade die een bestand van 88,9 mb (geen idee waarvandaan) met de naam van het bestand. Toen ik het probeerde af te spelen op mn desktop gaf die de melding dat de extensie niet met de bestandsindeling overeen kwam.
Dit is het script:

// download.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
$fullPath
="http://www.madpaintball.co.uk/userfiles/punjabi_lose_yourself.mp3";
if (file_get_contents($fullPath)) {
    $path_parts = pathinfo($fullPath); //ver 1.02 uses pathinfo now
    $ext = strtolower($path_parts["extension"]); //ver 1.01: Added the stringconv. to handle also extensions with caps
    switch ($ext) {
        case
"pdf":
        header("Content-type: application/pdf"); // add here more headers for diff. extensions
        header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\""); // use 'attachement' to force a download
        break;
        case
"mp3":
        header("Content-Type: plain/text"); // add here more headers for diff. extensions
        header("Content-Disposition: filename=\"".$path_parts["basename"]."\""); // use 'attachement' to force a download
        break;
        default;

        header("Content-type: application/octet-stream");
        header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
    }

    header("Cache-control: private"); //use this to open files directly
    while(!feof($fd)) {
        $buffer = fread($fd, 2048);
        echo $buffer;
    }
}

exit;
?>
 
Han eev

Han eev

12/07/2006 20:31:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$fullPath
="http://www.madpaintball.co.uk/userfiles/punjabi_lose_yourself.mp3";
$file = file_get_contents($fullPath);
if ($file) {
    $path_parts = pathinfo($fullPath); //ver 1.02 uses pathinfo now
    $ext = strtolower($path_parts["extension"]); //ver 1.01: Added the stringconv. to handle also extensions with caps
    switch ($ext) {
        case
"pdf":
        header("Content-type: application/pdf"); // add here more headers for diff. extensions
        header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\""); // use 'attachement' to force a download
        break;
        case
"mp3":
        header("Content-Type: plain/text"); // add here more headers for diff. extensions
        header("Content-Disposition: filename=\"".$path_parts["basename"]."\""); // use 'attachement' to force a download
        break;
        default;

        header("Content-type: application/octet-stream");
        header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
    }

    header("Cache-control: private"); //use this to open files directly
echo $file;
}

exit;
?>

Nu werkt het als het goed is.
 
Nicky van boven

nicky van boven

12/07/2006 20:37:00
Quote Anchor link
Han:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$fullPath
="http://www.madpaintball.co.uk/userfiles/punjabi_lose_yourself.mp3";
$file = file_get_contents($fullPath);
if ($file) {
    $path_parts = pathinfo($fullPath); //ver 1.02 uses pathinfo now
    $ext = strtolower($path_parts["extension"]); //ver 1.01: Added the stringconv. to handle also extensions with caps
    switch ($ext) {
        case
"pdf":
        header("Content-type: application/pdf"); // add here more headers for diff. extensions
        header("Content-Disposition: attachment; filename="".$path_parts["basename"]."""); // use 'attachement' to force a download
        break;
        case
"mp3":
        header("Content-Type: plain/text"); // add here more headers for diff. extensions
        header("Content-Disposition: filename="".$path_parts["basename"]."""); // use 'attachement' to force a download
        break;
        default;

        header("Content-type: application/octet-stream");
        header("Content-Disposition: filename="".$path_parts["basename"].""");
    }

    header("Cache-control: private"); //use this to open files directly
echo $file;
}

exit;
?>

Nu werkt het als het goed is.


omg jij bent goed Han ! (Y)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.