j'ai fait une page de teste, avec 5 parties:
haut: la banniere,
bas: les droits,
droite: menu droit,
gauche: menu gauche,
centre: pour afficher les pages.
alors j'ai fait une class pour verifier les fichiers, voir ce sujet: php-oriente-objet/une-class-des-fichiers-t259246.html
quand j'appelle a ma classe et je verifie avec la fonction "checkAndIncludeFile", les variables qui suit cette ligne ne sont pas prises en consideration, et donne une erreur:
la ligne 8:Notice: Undefined variable: paths in accueil.php on line 8
welcome<br />
<textarea cols="30" rows="5">text</textarea>
<span>Afficher et cacher ce texte</span>
<br />
<input type="text" size="20" maxlength="50" />
<br />
<?php
echo '<img src="'.$paths.'plus.png"><br>';
?>
mais si je les appels avant d'appeler la class ca marche, voila le code complet de la class:<?php
class File_Check {
private $fileName;
public function __construct()
{
}
// file_exists
public function fileExists($fileName)
{
$this->fileName = $fileName;
if(file_exists($this->fileName))
{
return TRUE;
}
else
{
return FALSE;
}
}
// is_file
public function isFile($fileName)
{
$this->fileName = $fileName;
if(is_file($this->fileName))
{
return TRUE;
}
else
{
return FALSE;
}
}
// in_array
public function fileArray($fileName)
{
$this->fileName = $fileName;
$AllowedExt = array('php');
$ext = pathinfo($this->fileName, PATHINFO_EXTENSION);
if(in_array($ext,$AllowedExt))
{
return TRUE;
}
else
{
return FALSE;
}
}
// regex
public function fileRegex($fileName)
{
$this->fileName = $fileName;
if(preg_match('#[\w_]#' ,$this->fileName))
{
return TRUE;
}
else
{
return FALSE;
}
}
// verifier le gros
public function checkAndIncludeFile($fileName)
{
if (
($this->fileExists($fileName))
AND
($this->isFile($fileName))
AND
($this->fileArray($fileName))
AND
($this->fileRegex($fileName)) == true)
{
require_once $this->fileName;
}
else
{
include 'page404.php';
}
}
}
?>
sachant que si je separe le code et je le mets dans une fonction, ca marche, probleme je pense d'instanciation de la classmerci a vous