[Résolu] Probleme avec une pseudo frame sur Free

WRInaute discret
Bonjour,

Sur un de mes sites j'utilise le script suivant pour gérer mes pseudo frames :


Code:
<?
          define("PATH", "./include/");
          // Tableau contenant les pages autorisées
          $tableau = glob(PATH . "*.inc.php");
          if (isset($_GET["page"]) && in_array(PATH . $_GET["page"] . ".inc.php", $tableau)) {
            $pageInclude = PATH . $_GET["page"] . ".inc.php";
          }
          else {
            $pageInclude = PATH .  "accueil.inc.php";
          }
          include $pageInclude;
?>


En local sur mon PC, aucun problème.
Sur Free, j'ai ce message :

Warning: in_array(): Wrong datatype for second argument in /var/www/sdb/4/d/gausmc78340/index.php on line 51

Y a t-il un problème sur Free pour gérer les pseudo frame comme ça ?

Merci d'avance
 
WRInaute accro
Sans réfléchir... C'est quoi la version de php déjà chez free ? la fonction que tu utilises (inarray), fonctionne-t-elle sur n'importe quelle version de php (s'écrit-elle de la même façon)--> à vérifier ...
(là, j'ai la flemme, sorry je vais au dodo :wink:)
 
WRInaute discret
La raison du problème est que Free a désactivé la fonction glob() pour des raisons de sécurité comme ils disent.

Va falloir coder autrement. :evil:

Edit :

Pour ceux que cela peut interesser, voila le nouveau code que j'utilise pour Free :

Code:
<?
          define("PATH", "./include/");
          // Tableau contenant les pages autorisées
          $d = dir("PATH");
          while($entry = $d->read()) {
            $tab = explode(".inc.php",$entry);
            $tableau[] = $tab[0];
          }
          $d->close();
          if (isset($_GET["page"]) && in_array($_GET["page"], $tableau)) {
            $pageInclude = PATH . $_GET["page"] . ".inc.php";
          }
          else {
            $pageInclude = PATH .  "accueil.inc.php";
          }
          include $pageInclude;
        ?>
 
Discussions similaires
Haut