Content Type lezen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jason de Ridder

Jason de Ridder

21/11/2007 12:47:00
Quote Anchor link
Hallo!

Is er een manier om de content-type van een file uit te lezen? Ik weet dat er een functie bestaat (mime_content_type), alleen deze voldoet niet aan mijn eisen. Aangezien de mime types in de Apache file incompleet is. (Een png image geeft ie terug als text/plain). Ook heb ik gekeken naar finfo_* alleen deze is nog in een te pril stadium.

Dus weet iemand een manier?

Bedankt!
Groet,
Jason
 
PHP hulp

PHP hulp

21/11/2024 17:51:45
 
Frank -

Frank -

21/11/2007 12:54:00
Quote Anchor link
Wat dacht je van finfo_open() ?

mime_content_type is deprecated, zie de handleiding.
 
Jason de Ridder

Jason de Ridder

21/11/2007 13:01:00
Quote Anchor link
Zie mijn post. finfo_open etc. kan ik niet gebruiken...
 
Robert Deiman

Robert Deiman

21/11/2007 13:14: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
<?php
$folder
= 'downloads/';
$myFile = 'mimes.csv';
$theData = file ($folder.$myFile);
$extention = explode('.',$myFile);
$extention = $extention[count($extention)-1];
foreach($theData as $value){
    list($mime['ext'],$mime['type']) = explode(';',$value);
    //echo '<tr><td>'.$extension.'</td><td>'.$mime_type.'</tr>';
    if($mime['ext'] == $extention){
        $mimetype = $mime['type'];
        }
    }


// Soort aangeven
header('Content-type: '.$mimetype);

// Naam toekennen en zorgen dat het downloadvenster getoond wordt.
header('Content-Disposition: attachment; filename="'.$myFile.'"');
header('Content-Length: '.filesize($folder.$myFile));
readfile($folder.$myFile);
?>
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
 
Frank -

Frank -

21/11/2007 13:15:00
Quote Anchor link
Raar, bij mijn weten gebruik je of de ene of de andere. Dus of mime_content_type of finfo_open. Dat staat ook in de handleiding, wat voor mij altijd de leidraad is.
 
Jason de Ridder

Jason de Ridder

21/11/2007 13:16:00
Quote Anchor link
Dank je Robert. Ik ga het er even mee proberen ;)

-- Nee het werkt niet :-P

Maar genoeg gekkigheid, ik heb het gevonden, het wordt een unix command:
trim(exec("file -bi ".escapeshellarg($filename)));

Edit:
@ Frank:
mime_content_type werkt wel, maar voldoet niet aan mijn eisen.

@ Robert:
Je checkt nu op extensie, dat is niet de bedoeling.
Gewijzigd op 01/01/1970 01:00:00 door Jason de Ridder
 
Robert Deiman

Robert Deiman

21/11/2007 13:20:00
Quote Anchor link
Kan ook Jason.. -> Het werkt op zich prima, het is maar een opzetje..;) Ik heb het al getest met mijn .csv file waarmee en waarvan die in het voorbeeld het mime type uit de array haalt.

De locatie van die .csv file is: http://www.robertdeiman.net/phphulp/mimes.csv


Maar volgens mij moet dat van Frank ook voor de meeste files wel werken..

Edit:

Het vergt uiteraard wel wat aanpassing, maar werkt bij mij prima.. *hij bied nu elk file type ter download aan, maar ook dat is simpel aan te passen
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
 



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.