Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks
Bibliothèques et frameworks Forum d'entraide sur les frameworks, templates, bibliothèques de code (PDFLib, eZPdf, JpGraph, Artichow, PEAR, etc). Avant de poster : FAQ bibliothèques, toutes les FAQ PHP et cours bibliothèques
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/12/2006, 09h41   #1
Membre expérimenté
 
Inscription : septembre 2006
Messages : 685
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 685
Points : 564
Points : 564
Par défaut Problème d'initialisation de "mime_magic"

Bonjour,

J'ai mis à jour php5 en installant la 5.2.0 et depuis(enfin je pense que c'est depuis ce moment), j'ai une erreur lorsque je veux me servir de mime_content_type :

Citation:
Warning: mime_content_type() [http://www.php.net/mime_magic]: mime_magic not initialized in D:\web\index.php on line 11
Pourtant la directive mon php.ini est bien établie(j'ai gardé le php.ini de la 5.1.0)

Code :
1
2
3
[mime_magic]
mime_magic.debug = On
mime_magic.magicfile = "c:/Serveur/Php/extras/magic.mime"
Le chemin est correct.
J'ai cherché partout sur le net, et j'ai rien trouvé.

Quelqu'un aurait-il une idée pourquoi j'ai cette erreur ?
Xunil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 12h04   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
tu as le mode "debug" sur "on" et le message est un "warning" donc un simple avertissement
peut-être que ça fonctionne quand même, est ce que tu as essayé ?
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 12h57   #3
Membre expérimenté
 
Inscription : septembre 2006
Messages : 685
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 685
Points : 564
Points : 564
Oui, justement ça ne fonctionne pas, la fonction ne me retourne rien

A part cet avertissement, si je met le debug à Off, je n'ai bien entendu plus l'erreur d'affichée, mais ça ne fonctionne pas plus pour autant.

J'ai tenté de reprendre l'ancienne dll du mime(5.0.5) et j'obtiens un fatal error fonction inconnue lorsque j'utilise mime_content_type()
Xunil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2006, 21h52   #4
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
Citation:
Envoyé par Xunil
J'ai tenté de reprendre l'ancienne dll du mime(5.0.5) et j'obtiens un fatal error fonction inconnue lorsque j'utilise mime_content_type()
tu as de la chance, quand on mélange les versions des DLL la plupart du temps Apache ne veut même plus se lancer

oh je viens de lire quelque chose d'intéressant là tout en haut :
http://php.net/ref.mime-magic
SI tu installe cette extension PECL ça va te faire du travail en plus mais si c'est conseillé ça fonctionnera peut-être mieux puisque tu as une des dernières versions de PHP
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2006, 01h08   #5
Membre expérimenté
 
Inscription : septembre 2006
Messages : 685
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 685
Points : 564
Points : 564
Merci, j'avais pas fait gaffe à cet encart.

J'ai installé la bibliothèque, mais bien sûr, ça ne fonctionne pas, ça aurait été trop simple.

J'ai des messages d'erreurs.

Citation:
Warning: finfo_open() [function.finfo-open]: Failed to load magic database at '(null)'. in D:\web\index.php on line 15

Warning: finfo_file(): supplied argument is not a valid file_info resource in D:\web\index.php on line 17
Je comprends pas trop bien les arguments à fournir.

J'ai tenté un :
Code php :
1
2
3
4
5
$o = file_get_contents('./mime/magic.mime');
 
$finfo = finfo_open(FILEINFO_MIME, $o);
 
echo finfo_file($finfo, './test.html');

Je n'ai plus la première erreur, mais toujours la 2nde, mais je doute que le 2nd argument à fournir doit être de ce type.

Je suis un peu perdu.
Xunil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2006, 15h53   #6
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
d'après la doc de la fonction (http://php.net/finfo_open) il ne faut pas mettre '.mime' à la fin
et si ça ne fonctionne pas essaye avec un chemin absolu
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2006, 16h47   #7
Membre expérimenté
 
Inscription : septembre 2006
Messages : 685
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 685
Points : 564
Points : 564
Merci,

C'était bien ça, il ne fallait pas mettre d'extension .mime, bizarre quand même de définir un truc pareil

J'y ai presque cru que ça allait fonctionner, mais non

C'est quand même pas encore très au point cette librairie.

finfo_file me dit que mon fichier n'existe pas... Et pourtant

Code php :
1
2
3
4
$finfo = finfo_open(FILEINFO_MIME, './mime/magic');
 
if( file_exists('./index.php') )
    echo finfo_file($finfo, './index.php');

Citation:
cannot open `./index.php' (No such file or directory)
J'ai tout essayé, chemin absolu, relatif, divers types de fichiers, il veut rien savoir.

Bref, j'abandonne, je suis à la saturation

Merci, sans ton aide, je n'aurais pas avancer jusqu'ici
Xunil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2006, 17h05   #8
Membre expérimenté
 
Inscription : septembre 2006
Messages : 685
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 685
Points : 564
Points : 564
Ah tiens, dans un grand élan désespéré de la dernière chance, j'ai tenté d'utiliser le buffer comme décrit dans la doc, et ooohh miracle, ça fonctionne

Code php :
1
2
3
4
$o = file_get_contents('./parse.html');
 
$finfo = new finfo(FILEINFO_MIME, './mime/magic');
echo $finfo->buffer($o);

Qui me renvoi :

text/html; charset=iso-8859-1

Merci pour tout.
Xunil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h53.


 
 
 
 
Partenaires

Hébergement Web