[Résolu]Problème de redirection (header php)

foxardt

New Member
#1
Bonjour!
Voilà déjà 2 semaines que j'ai mis mon site en ligne qui est toujours en développement pour des test et tout fonctionnait jusqu'à aujourd'hui vers 16h. J'ai juste touché à un fichier de fonction contenant la connexion à ma base de données l'ayant remplacé avec mon ficher local par erreur. Depuis tout mes header('Location: url') ont cessé de fonctionner sauf celui de ma page lougout étrangement. Hors je n'ai touché à aucun autre fichier et le site fonctionne correctement, on sait se connecter,etc. Juste plus aucun header ne renvoie vers la page donnée. J'ai tout testé en local tout fonctionne correctement.

Quelqu'un aurait-il déjà eu ce souci et/ou aurait une solution?
 

foxardt

New Member
#2
Finalement j'en suis venu à supprimer tous les fichiers et les réuploader et tout refonctionne. Aucune idée d'où provenait le bug.
 

PH-Quentin

Administrator
#3
Bonjour foxardt,

Très souvent le problème au niveau des fonctions tels eu header/session_start/... vient du fait qu'il ne faut pas un caractère envoyé au navigateur avant cette fonction.

Si le charset n'est pas en UTF-8 sans bom, vous risquez d'avoir des erreurs de types "Cannot send session cache limiter - headers already sent" si vous activé le display_error.

Bien à vous.
 

cepalajoi

New Member
#4
Bonjour je déterre, je déterre
Juste pour aider...
J'ai été confronté au problème du header location en php, pour la redirection en cas d'affichage sur mobile, je vais faire court:

Ca, ça ne marche pas(bien que pas de html avant et en tout début de page):

<?php
require_once 'Mobile_Detect.php';
$detect = new Mobile_Detect;

if($detect->isMobile())
{

header("Location: https://www.monsite/dossier/fichier.php");

exit();

}
?>

mais ça, ça marche:

<?php

require_once 'Mobile_Detect.php';
$detect = new Mobile_Detect;

if($detect->isMobile())
{
header("Status: 301 Moved Permanently", false, 301);
header("Location: https://www.monsite/dossier/fichier.php");

exit();

}

?>

Bonne journée
 
Haut