Skip to content
Extraits de code Groupes Projets
Valider 5157ff93 rédigé par cerdic's avatar cerdic
Parcourir les fichiers

Type de fichier distant : lorsque le mime-type est non discriminant...

Type de fichier distant : lorsque le mime-type est non discriminant (text/plain ou application/octet-stream) ou absent, mais qu'un en-tete
Content-Disposition: attachment; filename=...
est present, s'en servir pour identifier l'extension et le type du fichier si possible (et si l'url n'a pas d'extension elle meme)
parent 30940899
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -448,12 +448,22 @@ function recuperer_infos_distantes($source, $max=0, $charger_si_petite_image = t ...@@ -448,12 +448,22 @@ function recuperer_infos_distantes($source, $max=0, $charger_si_petite_image = t
while (isset($mime_alias[$mime_type])) while (isset($mime_alias[$mime_type]))
$mime_type = $mime_alias[$mime_type]; $mime_type = $mime_alias[$mime_type];
// Si on a text/plain, c'est peut-etre que le serveur ne sait pas // Si on a un mime-type insignifiant
// text/plain,application/octet-stream ou vide
// c'est peut-etre que le serveur ne sait pas
// ce qu'il sert ; on va tenter de detecter via l'extension de l'url // ce qu'il sert ; on va tenter de detecter via l'extension de l'url
// ou le Content-Disposition: attachment; filename=...
$t = null; $t = null;
if (($mime_type == 'text/plain' OR $mime_type == '') if (in_array($mime_type,array('text/plain','','application/octet-stream'))){
AND preg_match(',\.([a-z0-9]+)(\?.*)?$,', $source, $rext)) { if (!$t
$t = sql_fetsel("extension", "spip_types_documents", "extension=" . sql_quote($rext[1])); AND preg_match(',\.([a-z0-9]+)(\?.*)?$,', $source, $rext)) {
$t = sql_fetsel("extension", "spip_types_documents", "extension=" . sql_quote($rext[1]));
}
if (!$t
AND preg_match(",^Content-Disposition:\s*attachment;\s*filename=(.*)$,Uims",$headers,$m)
AND preg_match(',\.([a-z0-9]+)(\?.*)?$,', $m[1], $rext)){
$t = sql_fetsel("extension", "spip_types_documents", "extension=" . sql_quote($rext[1]));
}
} }
// Autre mime/type (ou text/plain avec fichier d'extension inconnue) // Autre mime/type (ou text/plain avec fichier d'extension inconnue)
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter