Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/01/2007, 22h47   #1
Invité régulier
 
Inscription : mars 2006
Messages : 10
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 10
Points : 5
Points : 5
Par défaut Erreur lors de la redirection

Bonjour. Je voudrais rediriger sur une autre page en fonction du résultat d'un formulaire d'authentification.
Or, j'obtiens la réponse
Warning: Cannot modify header information - headers already sent by....

voici le code :
Code :
1
2
3
4
5
6
 
<?
if ($menu1="famille")
header("Location: http://mondomaine.fr/répertoire/index.htm");
exit();
?>
Pouvez-vous m'aider ? SVP merci !
olgga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2007, 23h11   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 1 249
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2005
Messages : 1 249
Points : 1 417
Points : 1 417
Bonsoir et bienvenue sur ce forum.
Avant de poster, merci de faire une recherche sur ce forum et dans la FAQ.
Tu aurais alors trouvé la réponse à ta question, notamment ici : http://php.developpez.com/faq/?page=...s_already_sent
vg33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2007, 21h56   #3
Invité régulier
 
Inscription : mars 2006
Messages : 10
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 10
Points : 5
Points : 5
Je ne comprends pas pourquoi je n'arrive pas à rediriger en fin de code car le système me renvoie un "headers already sent by" en ligne 7

voici le code (c'est un peu long désolé)

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<title>inscription ou rejet id utilisateur</title>	   
 
 
<?	  // c'est ici la ligne 7 !
include('connect.php') 
 
if (isset($_POST['user'])){ $menu1=$_POST['user']; }
if (isset($_POST['motpasse'])){ $menu2=$_POST['motpasse']; }
 
?>
 
<?
 
		$nombre=1;
 
 		if (isset($menu1)){$select_ref= mysql_query("SELECT * FROM identi WHERE user = '$menu1' AND motpasse = '$menu2'"); }
 
	 	$nombre= mysql_affected_rows();
 
  	 	if ($nombre != 1) { ?>
 
<p align="left">Vous vous êtes trompé d'identifiant ou de mot de passe
 
<font color="#009C80" size="2"
 
face="Verdana, Arial, Helvetica, sans-serif"><b><i><a href="index.php" title="retour" target="_self">Cliquez ici pour vous identifier à nouveau</a></i></b></font></td>
 
<? } ?>
 
<? while($lignesoeuvr = mysql_fetch_array($select_ref)) { 
 
 if (($lignesoeuvr['user'] == $menu1) and ($lignesoeuvr['motpasse'] == $menu2)) { 	
 
 
 
// on ferme la connexion à mysql 
 
	mysql_close();
 
 } }  ?> 
 
<?
if ($menu1="famille");
header("Location: http://mondomaine.fr/répertoire/index.htm");
exit();
?>
olgga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2007, 23h02   #4
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Je fais une hypothèse : Tu n'as pas lu le lien donné par vg33

Et pour te prouver que la réponse y est :
Citation:
Envoyé par FAQ
Voici une liste (non exhaustive) de ce qui cause l'envoi des en-têtes :
  • un "echo"
  • un affichage hors PHP (c'est à dire de l'HTML en dehors du code)
  • un ou plusieurs retours chariots avant la balise "<?php"
  • une fonction qui rencontre une erreur et affiche un message (par exemple l'utilisation de la fonction "mysql_connect" avec de mauvais paramètres)
Tout ceci ne doit pas être fait avant l'utilisation de fonctions qui modifient les en-têtes comme "header" ou "session_start" entre autres.
En gros il DOIT rien avoir avant header (aucunes entêtes, par conséquent aucun title)
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h23.


 
 
 
 
Partenaires

Hébergement Web