Probleme de fonctions... en php

cs_hesher Messages postés 6 Date d'inscription jeudi 28 avril 2011 Statut Membre Dernière intervention 2 juin 2011 - 20 mai 2011 à 13:42
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 - 21 mai 2011 à 10:43
saluuuuuuuuuuuuuuuuuuuuuuuuuuuuTTTTTTT les amis ,

mon probleme c'est que dans ma page d'acceuil il a ya un code sous forme include_once("commun/obj_configfile.php");

$global_config = new ConfigFile("commun/obj_configfile.php");

if( $global_config->install_status == "READY" )
{
include("commun/_index.php");
}
else
{
header("Location:install/install.php");
}



et dans le fichier obj_configfile.php j'ai un autre code ...
le voici :<?

// Définition de l'objet
class ConfigFile
{

//////////// CONSTRUCTEURS ////////////
function ConfigFile($filename)
{
$this->_empty = TRUE;
$this->_filename = $filename;

$this->Load();
}


//////////// METHODES PUBLIQUES ////////////

function Load()
{
// on évite de faire un include simple, car qq'un pourrai comme ça inclure n'importe quoi (sécurité)
// alors on refait une sorte d'include:
// - on lit le contenu du fichier de conf
// - on fait un eval() du contenu
// - on assigne aux variables de classe les variables du contexte
// Plus tard il faudra vérifier quand même l'emplacement du fichier de conf, son contenu, etc.
// pour éviter les failles trop faciles à exploiter...
if( !($f = @fopen($this->_filename, "r")) ) { return FALSE; }
while( !@feof($f) )
{
if( ($buff = @fgets($f, 4096)) != "" )
{
@eval($buff);
}
}
@fclose($f);

$this->install_status = $install_status;
$this->mail_webmestre = $mail_webmestre;

$this->mysqlserver = $mysqlserver;
$this->mysqlloggin = $mysqlloggin;
$this->mysqlmaindb = $mysqlmaindb;
$this->mysqlpassword = $mysqlpassword;
$this->mysqlprefix = $mysqlprefix;

$this->errlog_path = $errlog_path;
$this->errlog_maxsize = $errlog_maxsize;
$this->errlog_level = $errlog_level;

$this->ldap_enabled = $ldap_enabled;
$this->ldap_serveur = $ldap_serveur;
$this->ldap_base_dn = $ldap_base_dn;
$this->ldap_user_suffixe = $ldap_user_suffixe;

$this->_empty = FALSE;

return TRUE;
}

function Save()
{
return $this->SaveAs($this->_filename);
}

function SaveAs($filename)
{
if( !($f = @fopen($filename, "w+")) ) { return FALSE; }
@fputs($f, $this->_Serialise());
@fclose($f);

return TRUE;
}

//////////// VARIABLES PUBLIQUES ////////////
var $install_status;
var $mail_webmestre;

var $mysqlserver;
var $mysqlloggin;
var $mysqlmaindb;
var $mysqlpassword;
var $mysqlprefix;

var $errlog_path;
var $errlog_maxsize;
var $errlog_level;

var $ldap_enabled;
var $ldap_serveur;
var $ldap_base_dn;
var $ldap_user_suffixe;


//////////// METHODES PRIVEES ////////////
function _Serialise()
{
$result = "<?php";
$result.= "\n// Ce fichier est généré automatiquement. Vous devez savoir ce que vous faites si vous devez le modifier.\n";
$result.= "\n// Général";
$result.= "\n"."\$install_status\t= '".$this->install_status."';";
$result.= "\n"."\$mail_webmestre\t= '".$this->mail_webmestre."';";
$result.= "\n";
$result.= "\n// Paramétres d'accès à la base MySQL";
$result.= "\n"."\$mysqlserver\t= '".$this->mysqlserver."';";
$result.= "\n"."\$mysqlloggin\t= '".$this->mysqlloggin."';";
$result.= "\n"."\$mysqlpassword\t= '".$this->mysqlpassword."';";
$result.= "\n"."\$mysqlmaindb\t= '".$this->mysqlmaindb."';";
$result.= "\n"."\$mysqlprefix\t= '".$this->mysqlprefix."';";
$result.= "\n";
$result.= "\n// Journaux d'événements";
$result.= "\n@include_once('../commun/logerrors.php'); // définitions des constantes globales";
$result.= "\n@include_once('commun/logerrors.php'); // définitions des constantes globales";
$result.= "\n"."\$errlog_path\t= '".$this->errlog_path."';";
$result.= "\n"."\$errlog_maxsize\t= ".$this->errlog_maxsize.";";

@include_once("../commun/logerrors.php");
@include_once("commun/logerrors.php");
global $CVT_LOG_LEV_TXT;
$result.= "\n"."\$errlog_level\t= ".$CVT_LOG_LEV_TXT[$this->errlog_level].";";

$result.= "\n";
$result.= "\n// Connexion LDAP";
$result.= "\n// Note: le fait d'utiliser LDAP désactive la création d'entreprises et de cnadidats.";
$result.= "\n"."\$ldap_enabled\t= ".($this->ldap_enabled===true?"true":"false").";";
$result.= "\n"."\$ldap_serveur\t= '".$this->ldap_serveur."';";
$result.= "\n"."\$ldap_base_dn\t= '".$this->ldap_base_dn."';";
$result.= "\n"."\$ldap_user_suffixe\t= '".$this->ldap_user_suffixe."';";
$result.= "\n\n?>";

return $result;
}

//////////// VARIABLES PRIVEES ////////////
var $_filename;
var $_empty;

}

?>








dans le browser ils affichent ça ::

( _empty TRUE; $this->_filename $filename; $this->Load(); } //////////// METHODES PUBLIQUES //////////// function Load() { // on évite de faire un include simple, car qq'un pourrai comme ça inclure n'importe quoi (sécurité) // alors on refait une sorte d'include: // - on lit le contenu du fichier de conf // - on fait un eval() du contenu // - on assigne aux variables de classe les variables du contexte // Plus tard il faudra vérifier quand même l'emplacement du fichier de conf, son contenu, etc. // pour éviter les failles trop faciles à exploiter... if( !($f = @fopen($this->_filename, "r")) ) { return FALSE; } while( !@feof($f) ) { if( ($buff = @fgets($f, 4096)) != "" ) { @eval($buff); } } @fclose($f); $this->install_status = $install_status; $this->mail_webmestre = $mail_webmestre; $this->mysqlserver = $mysqlserver; $this->mysqlloggin = $mysqlloggin; $this->mysqlmaindb = $mysqlmaindb; $this->mysqlpassword = $mysqlpassword; $this->mysqlprefix = $mysqlprefix; $this->errlog_path = $errlog_path; $this->errlog_maxsize = $errlog_maxsize; $this->errlog_level = $errlog_level; $this->ldap_enabled = $ldap_enabled; $this->ldap_serveur = $ldap_serveur; $this->ldap_base_dn = $ldap_base_dn; $this->ldap_user_suffixe = $ldap_user_suffixe; $this->_empty = FALSE; return TRUE; } function Save() { return $this->SaveAs($this->_filename); } function SaveAs($filename) { if( !($f = @fopen($filename, "w+")) ) { return FALSE; } @fputs($f, $this->_Serialise()); @fclose($f); return TRUE; } //////////// VARIABLES PUBLIQUES //////////// var $install_status; var $mail_webmestre; var $mysqlserver; var $mysqlloggin; var $mysqlmaindb; var $mysqlpassword; var $mysqlprefix; var $errlog_path; var $errlog_maxsize; var $errlog_level; var $ldap_enabled; var $ldap_serveur; var $ldap_base_dn; var $ldap_user_suffixe; //////////// METHODES PRIVEES //////////// function _Serialise() { $result = "
Fatal error: Class 'ConfigFile' not found in C:\Users\admin\Desktop\cvtheque\index.php on line 34




aidez moii s'il vous plaittttttt plzzzzzzz

4 réponses

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
20 mai 2011 à 20:34
bonsoir
je vois des short tags <?
essaie de mettre dans tes fichiers des <?php
c.a.d. remplace les <? par <?php
a++
Bonne programmation !
0
cs_hesher Messages postés 6 Date d'inscription jeudi 28 avril 2011 Statut Membre Dernière intervention 2 juin 2011
21 mai 2011 à 00:30
merci bien ,C hyper gentil

mais vous savez, apres avoir regler le probleme que vs avez remarquez ils m'ont affiché maintenant comme erreur dans le browser ceci ..
(
Fatal error: Maximum execution time of 30 seconds exceeded in C:\Users\admin\Desktop\cvtheque\commun\obj_configfile.php on line 29 )

j crois c ca la ligne 29 :while( !@feof($f) ) et voila toute la ligne 31 : if( ($buff = @fgets($f, 4096)) != "" )
ca aussi ils ont dit qu'il y ait un probleme


merci pour tout ^^
0
cs_hesher Messages postés 6 Date d'inscription jeudi 28 avril 2011 Statut Membre Dernière intervention 2 juin 2011
21 mai 2011 à 00:35
pouvez vous m'aidez, j'en ai tellmt besoin

et merci pour votre attention
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
21 mai 2011 à 10:43
bonjour

while( !@feof($f) )
{
if( ($buff = @fgets($f, 4096)) != "" )
{
}
}
@fclose($f);

remplace par

if($buff[] = @fread(fopen($f,"r"), filesize($f))){
//test
//echo '';
//print_r($buff);
eval($buff);
}else{
exit('fichier impossible à lire ou inexistant ?');
}


ton erreur
soit le fichier est
inexistant
impossible à lire
ou tros gros

tu peux mettre ça apres le <?php
60 secondes ...

<?php
if( !ini_get('safe_mode') ){
set_time_limit(60);
}


...


a++
Bonne programmation !
0
Rejoignez-nous