Redirection selon maintenance /ou pas?

Par Jake, il y a 9 ans


Bonjour,

Voilà, je rencontre un petit problème avec mon code php.

Voici mon code

// Maintenance if(phpSecu($config['maintenance'] == 0)){ header('Location: index.php'); } elseif(phpSecu($config['maintenance'] == 1)){ header('Location: error.php'); }

Et mes fonctions

function phpSecu($str){ $str = htmlentities(htmlspecialchars(trim($str))); return $str; } function phpHash($str){ $str = md5(sha1($str)); return $str; }

Ce que j'obtiens

http://prntscr.com/cmpgv0 (Je n'arrive pas a publier l'image directement).

Donc voilà, je devrais tomber sur l'index.php page blanche vierge sachant que mon maintenant = 0. Hors ce n'est pas le cas, ça me lance une page d'erreur par Google. Où est le problème dans mon code? Quand je passe la maintenance en 1 (maintenance activé) là, la redirection marche et je tombe sur error.php

Merci de votre aide

5 réponses

Carouge10, il y a 9 ans

Bonsoir,
Attention au positionnement des parenthèses de la fonction....

Jake, il y a 9 ans

Bonsoir Carouge10,
Comment ça les parenthèses? Des fonctions ou de la fonction if et elseif?
Si c'est pour if et elseif j'ai essayé de placer == 1 / == 0 avant, après et entre les parenthèses rien n'a fonctionné..

Carouge10, il y a 9 ans

dans le if car ça doit être le résultat de phpSecu qui vaut 0 ou 1

// Maintenance if(phpSecu($config['maintenance']) === 0){ header('Location: index.php'); } elseif(phpSecu($config['maintenance']) === 1){ header('Location: error.php'); }
fderoeux, il y a 9 ans

peut être comme cela ?

// Maintenance if(phpSecu($config['maintenance']) == 0){ header('Location: index.php'); } elseif(phpSecu($config['maintenance']) == 1){ header('Location: error.php'); }
Jake, il y a 9 ans

Merci Carouge10!
Je viens de comprendre et y a 4/5 mois avant que j'arrete un peu le developpement j'avais également ce problème et j'avais pas compris, de plus j'ai jamais vu/je ne savais pas qu'on pouvait mettre "===" j'ai toujours lu "=" ou "==" mais jamais 3

Merci ! :)