Aller au menu - Aller au contenu

probleme pour une redirection de page

php

Pour accéder à cette section
Connectez-vous !
connexion_rpx

Résolu Le problème de ce sujet a été résolu

Offre d'emploi : Développeur Web PHP/Drupal (H/F)

Page 1 
Auteur Message
1 visiteur sur ce sujet (1 Anonyme)
Page 1 
Hors ligne oxii # Posté le 08/02/2012 à 15:22:52
oh pinaise
Avatar

Salut tout le monde.
Qlq1 pourrait-il m'aider,
après validation de mon formulaire j'ai un problème de redirection de page.


Voila le msg d'erreur : Warning: Cannot modify header information - headers already sent by (output started at /homez.402/xiliane/snom/www/connexion.php:1) in /homez.402/xiliane/snom/www/connexion.php on line 50

et voila le code associé :

Code : PHP
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
<?php
$requete2 = "INSERT INTO client(nom, prenom, rue, cp, ville, numTel, numPort, email, nums, remarque) values ('$nomClient','$prenomClient','$rueClient','$cpClient','$villeClient','$numTelClient','$numPortClient','$emailClient','$numeroSerieClient','$remarqueClient')";
		   $ok = mysql_query($requete2)or die('Erreur SQL !<br>'.$requete2.'<br>'.mysql_error());
		   }
		   else {
		         echo 'ces informations ont deja été saisies';
		         echo 'Merci de revenir a la page d\'accueil pour saisir de nouvelles informations.';
		         echo '<a href="accueil.html">Veuillez reessayer</a>';
			    }
		   		   
/*////////////////////si l'insertion est faite alors redirection vers la page condition sinon msg d'erreur.////////////////////*/

            if ($ok) 
			{	    
		   header('Location: /condition.html');
		    }
			else {echo 'Impossible d\'exécuter cette requête...';}
?>


Merci d'avance
Publicité # Posté le 08/02/2012 à 15:22:52

Hors ligne Tyrar # Posté le 08/02/2012 à 15:26:05

Bonjour,
il ne doit jamais y avoir de code HTML avec un header. Dans ton cas, tu dois avoir un petit bout de HTML qui traine juste avant ta redirection donc ça foire.

Bonne journée,
Tyrar
 
Hors ligne DirtDiver # Posté le 08/02/2012 à 15:27:02
Avatar

Je ne sais pas si ça vient de là, mais les headers posent souvent problème losqu'il y 'a du code avant.

Utilise peut-être du javascript ou tout simplement une meta html.
Hors ligne oxii # Posté le 08/02/2012 à 15:28:46
oh pinaise
Avatar

:o
J'ai pas de code html avant c'est bizarre.

voila mon code
Code : PHP
 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
47
48
49
50
51
52
53
54
55
56
<?php
include("co_bdd.php");
@session_start();
		 
		   $nomClient=$_POST['nom']; 
		   $prenomClient=$_POST['prenom'];
		   $numPortClient=$_POST['numPort'];
		   $emailClient=$_POST['email'];
		   $numeroSerieClient=$_POST['nums'];
		   
/*////////////////////Verification que le idcle soit unique, pour ne pas dupliquer un client ds la bdd////////////////////*/

		   $requete1 = "SELECT idcle FROM client WHERE nom='$nomClient' and prenom='$prenomClient' and numPort='$numPortClient' and email='$emailClient' and nums='$numeroSerieClient'";
		   $execution = mysql_query($requete1)or die('Erreur SQL !<br>'.$requete1.'<br>'.mysql_error());
		   $idcle = $execution["idcle"];
		   if (!$idcle) // si l'idcle est unique alors on fait l'insertion
		   {	   
/*////////////////////récupération des résultats dans des variables////////////////////*/

		   $nomClient=$_POST['nom'];
		   $prenomClient=$_POST['prenom'];
		   $rueClient=$_POST['rue'];
		   $cpClient=$_POST['cp'];
		   $villeClient=$_POST['ville'];
		   $numTelClient=$_POST['numTel'];
		   $numPortClient=$_POST['numPort'];
		   $emailClient=$_POST['email'];
		   $numeroSerieClient=$_POST['nums'];
		   $remarqueClient=$_POST['remarque'];
		   
/*////////////////////requête d'insertion ds la bdd////////////////////*/	
		   
		   $_SESSION['numPort']=$numPortClient;
		   
/*////////////////////requête d'insertion ds la bdd////////////////////*/	
	   			
		   $requete2 = "INSERT INTO client(nom, prenom, rue, cp, ville, numTel, numPort, email, nums, remarque) values ('$nomClient','$prenomClient','$rueClient','$cpClient','$villeClient','$numTelClient','$numPortClient','$emailClient','$numeroSerieClient','$remarqueClient')";
		   $ok = mysql_query($requete2)or die('Erreur SQL !<br>'.$requete2.'<br>'.mysql_error());
		   }
		   else {
		         echo 'ces informations ont deja été saisies';
		         echo 'Merci de revenir a la page d\'accueil pour saisir de nouvelles informations.';
		         echo '<a href="accueil.html">Veuillez reessayer</a>';
			    }
		   		   
/*////////////////////si l'insertion est faite alors redirection vers la page condition sinon msg d'erreur.////////////////////*/

            if ($ok) 
			{	    
		   header('Location: /condition.html');
		    }
			else {echo 'Impossible d\'exécuter cette requête...';}
			
     mysql_close();
		   
?>
Hors ligne Sparrow # Posté le 08/02/2012 à 15:30:22
Nous apprenons tous les jours
Avatar

Si,
lignes 41 à 43 incluses. Tu fais afficher quelque chose. Du coup, il y a eu du contenu, les headers ont déjà été envoyés, impossible d'en rajouter.

Sujet résolu ? Passez au vert !Image utilisateur
Bien poster : zCode et indentation - Pas de questions par MP - Linux n'est pas Windows[2]
 
Hors ligne Tyrar # Posté le 08/02/2012 à 15:32:47

Tu remarqueras que pour avoir Ok, il n'est pas dans la phase "else" 41 à 43 comme tu dis. Enfin, je dis ça, je dis rien.
 
Hors ligne Sparrow # Posté le 08/02/2012 à 15:34:03
Nous apprenons tous les jours
Avatar

Je viens de relire un peu le premier message d'erreur. Qu'as-tu dans connexion.php ?

Sujet résolu ? Passez au vert !Image utilisateur
Bien poster : zCode et indentation - Pas de questions par MP - Linux n'est pas Windows[2]
 
Hors ligne Tyrar # Posté le 08/02/2012 à 15:35:40

Hors ligne oxii # Posté le 08/02/2012 à 15:42:47
oh pinaise
Avatar

à Tyrar :

ca veut dire qu'il faut que je mets $ok .... après mon accolade ?

à Sparrow :

dans connexion.php y'a le code si dessus.

Hors ligne Sparrow # Posté le 08/02/2012 à 15:48:43
Nous apprenons tous les jours
Avatar

Hum oui, désolé, j'ai été à côté de la plaque.
Ca semble pas venir ce ce code là, cherche en amont du coup, voire si t'as pas un echo mal placé, ou bien un affichage d'un bout de ton site, un message d'erreur (autre que celui des headers), etc ...

Sujet résolu ? Passez au vert !Image utilisateur
Bien poster : zCode et indentation - Pas de questions par MP - Linux n'est pas Windows[2]
 
Hors ligne oxii # Posté le 08/02/2012 à 15:51:13
oh pinaise
Avatar

en Local sa fonctionne très bien mais pas des que je le mets en ligne.
je ne vois pas d'ou vient le problème.
j'ai qu'une page avant et c'est mon formulaire
Hors ligne Tyrar # Posté le 08/02/2012 à 20:10:59

Regarde la source pour voir ce qui se passe. Au moins, tu auras t'as réponse.
 
Hors ligne oxii # Posté le 09/02/2012 à 11:36:43
oh pinaise
Avatar

Problème résolu,

j'avais un espace entre devant la première balise <?php
une erreur toute bête.

merci a vous.

Retour au forum "PHP" ou à la liste des forums

Pour accéder à cette section
Connectez-vous !
connexion_rpx