Eléphant du PHP |
72 Messages
09 nov. 2009, 15:19
Merci à toi j'y avais justement passé.
cependant, apres reflexion, on imagine que la dll n'existe pas donc realpath pour obtenir le chemin vers cette dll ne renverra que false et donc tout mon raisonnement etait compromis.
Mais bon maintenant tout marche grace à php_ini_loaded_file().
Le seul hic vient du ini_set qui ne marche pas dans mon code qui est complet la dessous :
public static function VerifieExtension (){
$sPathToPhpIni = php_ini_loaded_file();
$sPathToDirectoryPhpIni = dirname($sPathToPhpIni);
$sPathToDll = ini_get('extension_dir');
// on ne peut pas utiliser realpath sur $sPathFinal car si jamais le fichier dll n'existe pas $sPathFinal ne marchera passe et le chargement dynamique par copie de notre dll ne marchera pas
$sPathFinal = $sPathToDirectoryPhpIni.'/'.$sPathToDll.'php_gd2.dll';
if (FALSE === is_string($sPathToDll)){
wb_message_box($window,'Aucune extension n\'a été trouvé dans le fichier de configuration' ,'Erreur Code Ini_get',WBC_WARNING);
}elseif( FALSE === is_file($sPathFinal)){ //Retourne TRUE si le nom de fichier existe et que c'est un fichier
//wb_message_box($window,'Le fichier Dll d\'extension Ftp est introuvable'.$sPathFinal,'Erreur Code Ini_get',WBC_WARNING);
// on deplace notre dll disponible dans Data\Ext\ afin de la copier dans le dossier des extensions de php et apache
if (TRUE === copy(PATH_EXT .'php_gd2.dll', $sPathFinal)){
//on indique à php et apache la nouvelle extension disponible
$sExtensionMise = ini_set('extension','php_gd2.dll');
if( TRUE === is_string($sExtensionMise) ){
wb_message_box($window,'Le fichier Dll d\'extension'.$sExtensionMise.' a été chargée correctement','Succes d\'importation d\'une Dll',WBC_INFO);
}else{
wb_message_box($window,'Impossible de forcer la dll dans le fichier de configuration'.$sExtensionMise.' a été chargée correctement','Succes d\'importation d\'une Dll',WBC_INFO);
}
}else{
wb_message_box($window,'Le chargement dynamique de la dll a été impossible','Extensions manquantes',WBC_INFO);
}
}
}
y vois tu une solution?
merci de ton aide