Redirection d'une page en php
sunev
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour a tous et bonne année, bonne santé et tout le reste.
Sur une page protégée par un mot de passe qui redirige vers cette page si ce mot de passe est correct,
dont le code est:
Ce code fonctionne très bien en local, la page: pages_securisees.php s'ouvre.
Par contre sur le serveur de mon site hébergé chez free il s'affiche ce message d'erreur:
Warning: Cannot modify header information - headers already sent by (output started at /mnt/169/sda/0/c/mon_sites/mot_de_login.php:8) in /mnt/169/sda/0/c/mon_sites/mot_de_login.php on line 33
Même avec l'adresse complète http//:monsite/pages_securisees.php c'est pareil.
Si quelqu'un a une idée d’où vient l'erreur, merci de m'en indiquer la raison'
ou éventuellement une autre astuce pour que ça fonctionne.
Sur une page protégée par un mot de passe qui redirige vers cette page si ce mot de passe est correct,
dont le code est:
<?php
if (isset($_POST['mot_de_passe']) AND $_POST['mot_de_passe'] == "login"){
// Si le mot de passe est bon
header('Location: pages_securisees.php'); //redirige vers la pages_securisees.php
}
else { // Sinon, on affiche un message d'erreur
echo '<div;><span style="font-size:14pt;"> Mot de Passe incorrect</span></div>';
}
?>
Ce code fonctionne très bien en local, la page: pages_securisees.php s'ouvre.
Par contre sur le serveur de mon site hébergé chez free il s'affiche ce message d'erreur:
Warning: Cannot modify header information - headers already sent by (output started at /mnt/169/sda/0/c/mon_sites/mot_de_login.php:8) in /mnt/169/sda/0/c/mon_sites/mot_de_login.php on line 33
Même avec l'adresse complète http//:monsite/pages_securisees.php c'est pareil.
Si quelqu'un a une idée d’où vient l'erreur, merci de m'en indiquer la raison'
ou éventuellement une autre astuce pour que ça fonctionne.
A voir également:
- Redirection d'une page en php
- Supprimer une page word - Guide
- Imprimer tableau excel sur une page - Guide
- Traduire une page en français - Guide
- Mettre google en page d'accueil - Guide
- Créer une page facebook - Guide
3 réponses
Tu as des caractères avant le premier <
Des retours à la ligne ou le marqueur UTF-8 (cas très courants)
Des retours à la ligne ou le marqueur UTF-8 (cas très courants)
Ca arrive (normalement) quand tu mets du code html avant avoir mis le header.
Essaye ca:
(par contre il faut mettre
Sinon tu peux protéger ta page par un fichier .htaccess, voir https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/918580-protegez-un-dossier-avec-un-htaccess
Essaye ca:
(par contre il faut mettre
ob_start();au tout début de la page et
ob_end_flush();tout a la fin...)
<?php //retient les informations ob_start(); if (isset($_POST['mot_de_passe']) AND $_POST['mot_de_passe'] == "login"){ // Si le mot de passe est bon header('Location: pages_securisees.php'); //redirige vers la pages_securisees.php } else { // Sinon, on affiche un message d'erreur echo '<div;><span style="font-size:14pt;"> Mot de Passe incorrect</span></div>'; } //relache les infos ob_end_flush(); ?>
Sinon tu peux protéger ta page par un fichier .htaccess, voir https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/918580-protegez-un-dossier-avec-un-htaccess
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
Qu'as tu dans les lignes 1 à 33 de mot_de_login.php?