IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

probleme apres l'inscription d'un membre


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Octobre 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 13
    Points : 6
    Points
    6
    Par défaut probleme apres l'inscription d'un membre
    je recois le code ci-dessus lorsque j'appuie sue le button de valider les champs du formulaire le membre s'enregistre dans la base de donnéé mais le probleme que je ressois cet erreur en haut et le membre ne ce redirecté pas vers la page login.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Warning: Cannot modify header information - headers already sent by (output started at /home/clicdown/public_html/st/inscription.php:1) in /home/clicdown/public_html/st/inscription.php on line 63

    voila le code d ajout des champs de formulaire dans la table membres

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    					try{$req =$bdd ->prepare('insert into membres(utilisateur,motdepasse,email,nom,sexe,prenom,ville,pays,datenaiss) values(?,?,?,?,?,?,?,?,?)');
    					    $req->execute(array($_POST['utilisateur'],$_POST['motdepasse'],$_POST['email'],$_POST['nom'],$_POST['sexe'],$_POST['prenom'],$_POST['ville'],$_POST['pays'],$dat));}
    					   catch(exception $messag){
    					  die('errur : '.$messag->getMessage());}
     
    					header("location: login.php");

  2. #2
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    si tu as une erreur "header already sent" c'est que t'as redirection arrive alors qu'une message est déjà affiché.

    donc soit il est mal placé soit y a un autre soucis avant ta redirection.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  3. #3
    Futur Membre du Club
    Inscrit en
    Octobre 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par Vil'Coyote Voir le message
    si tu as une erreur "header already sent" c'est que t'as redirection arrive alors qu'une message est déjà affiché.

    donc soit il est mal placé soit y a un autre soucis avant ta redirection.

    voila tous le code j'esper que vous m'aidiez


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
     <?php      
     if(isset($_COOKIE['id']) and isset($_cookie['utilisateur']) and isset($_COOKIE['motdepasse']) ){$hiden =true; header("location : login.php");}   
        else{$message ='Page d\'inscription :';
    	     $message1 ='';
    	     $hiden = false;
    		  $head ='Source Info > Inscription';
     
    		   if(isset($_POST["envoyer"])){
    			   //verification du formulaire
    			    //verification du formulaire
    				 //verification du formulaire
    			   if(  strlen($_POST['utilisateur'])<4 or strlen($_POST['utilisateur'])>20 or !preg_match('#^[a-z0-9]+$#i', $_POST['utilisateur']))
    			   { $message1 .='le nom d\'utilisateur ne doit pas comporter des caractères speciales, le nombre des caractères et chiffres doit etre entre 4 et 20<br>'; }
     
    			if($_POST['motdepasse'] != $_POST['motdepasse1']){$message1 .='';$message1 .='la repitition du mot de passe est incorrecte<br>';}
    			  else if(strlen($_POST['motdepasse'])<6 or strlen($_POST['motdepasse'])>15 or !preg_match('#^[a-z0-9]+$#i', $_POST['motdepasse']))
    			  { ;$message1 .='le mot de passe doit comporter au moin 6 caractères et ne de passe pas 15,evitez des caractères speciales<br>';}
     
     
    			   if(  strlen($_POST['prenom'])<2 or strlen($_POST['nom'])<2 or strlen($_POST['nom'])>20 or strlen($_POST['prenom'])>20  or !preg_match('#^[a-z]+$#i', $_POST['nom']) or !preg_match('#^[a-z]+$#i', $_POST['prenom']) )
    			   { $message1 .='le nom ou prenom doit compris entre 4 et 20 caractere, evitez des caractères speciales<br>'; }
     
     
    			if( strlen($_POST['ville'])<2 or strlen($_POST['pays'])<2 or strlen($_POST['ville'])>20 or strlen($_POST['pays'])>20  or !preg_match('#^[a-z]+$#i', $_POST['ville']) or !preg_match('#^[a-z]+$#i', $_POST['pays']) )
    			   { $message1 .='la ville ou pays sont incorrect<br>'; }
     
    			   if(!preg_match('/^[^@]+@[a-zA-Z0-9._-]+\.[a-zA-Z]+$/', $_POST['email']))
    			   { $message1 .='l\'email est incorrect<br>'; }
     
    			if( $_POST['jour']>31 or $_POST['mois']>12 or $_POST['annee']>2011 or $_POST['annee']<1900  or !preg_match('#^[0-9]+$#i', $_POST['jour']) or !preg_match('#^[0-9]+$#i', $_POST['mois']) or !preg_match('#^[0-9]+$#i', $_POST['annee']) )
    			   { $message1 .='la date naissance est incorrecte<br>'; }
     
     
     
     
              if (strlen($message1)<10){ $dat = $_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour'];
    			   //////////////////
    			   //////////////////
    			   include('config.php');
     
     
    			     try{$req = $bdd->prepare('select * from membres where utilisateur=? or nom =? or email=?');  
    			        $req->execute(array($_POST['utilisateur'],$_POST['nom'],$_POST['email']));
    			        $compt = $req->rowCount();}
    					catch(exception $messag){
    					  die('erreur : '.$messag->getMessage());}
     
    					if($compt>0){ 
    					     while($row = $req->fetch()){
    					           if($_POST['utilisateur']== $row['utilisateur']){$message1="le nom utilisateur deja utilisé";}
    							   else if($_POST['nom']== $row['nom']){$message1="le nom est deja utilisé";}
    							   else if($_POST['email']== $row['email']){$message1="l'email est deja utilisé";}
    					     }
     
    					}
     
    					else{ 
    					try{$req =$bdd ->prepare('insert into membres(utilisateur,motdepasse,email,nom,sexe,prenom,ville,pays,datenaiss) values(?,?,?,?,?,?,?,?,?)');
    					    $req->execute(array($_POST['utilisateur'],$_POST['motdepasse'],$_POST['email'],$_POST['nom'],$_POST['sexe'],$_POST['prenom'],$_POST['ville'],$_POST['pays'],$dat));}
    					   catch(exception $messag){
    					  die('errur : '.$messag->getMessage());}
     
    					header("location: login.php");}
     
     
     
     
     
     
    			$bdd = null;
     
     
    		    }}
     
     
     
    	    }     
     
     
     
           if($hiden == true){header('location: profil.php');}
    	   else if($hiden != true){
    	   $valeur = '<div class="data"><div class="auter"><b>'.$message1.'</b></div><br><br><form action="inscription.php" method="post">
              <p>
              <div class="val1">  <span class="bold1">votre Nom d\'utilisateur :<br></span>
    			<span class="bold1">votre Mot de passe :<br></span>
    			<span class="bold1">Répeter Le Mot de passe :<br></span>
    			<span class="bold1">votre Nom : <br></span>
    			<span class="bold1">votre Prénom : <br></span>
    			<span class="bold1">Sexe:<br> </span> 
    			<span class="bold1">votre ville : <br></span>
    			<span class="bold1">votre pays :<br></span>
    			<span class="bold1">votre email :<br></span>
    			<span class="bold1">Date Naissance :<br></span>
    			<span class="bold1">Lien d\'une photo :<br></span>
    			<br><input type="submit" value="Valider"  name="envoyer"/></div>
    			
    			<div class="val2"><input type="text" name="utilisateur" /><br>
    			<input type="password" name="motdepasse" /><br>
    			<input type="password" name="motdepasse1" /><br>
    			<input type="text" name="nom" /><br>
    			<input type="text" name="prenom" /><br>
    			<input type="radio" name="sexe" value="male" checked="checked" /> Male:   <input type="radio" name="sexe" value="femelle" />  Femelle<br>
    			<input type="text" name="ville" /><br>
    			<input type="text" name="pays" /><br>
    			<input type="text" name="email" /><br>
    			Jour : <input type="text" name="jour"size=2  /> Mois : <input type="text" name="mois" size=2 /> Année : <input type="text" name="annee" size = 6 /><br>
    			<input type="text" name="photo" /><br>
    			</div>
    			
                
              </p>
         </form></div>'; require('index.php');}
     
    	  ?>

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 99
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    Evites les messages en gras et rouge, ca peut être mal interprêté par la communauté.

    En ce qui concerne ton code, j'ai repéré une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    { ;$message1 .='le mot de passe doit comporter au moin 6 caractères et ne de passe pas 15,evitez des caractères speciales<br>';}
    Comme tu vois, il y a un point-virgule en début de traitement de condition.
    PHP doit te renvoyer une erreur de syntaxe, d'où une chaine avant le header.

    C'est peut-être autre chose aussi.

    Pour bien débugger un code, il faut passer par des echo et autre print_r afin de savoir ce qui se passe avant d'enchaîner sur un header.

    j'espère que ca pourra t'aider.

  5. #5
    Futur Membre du Club
    Inscrit en
    Octobre 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par anthony89 Voir le message
    Bonjour,

    Evites les messages en gras et rouge, ca peut être mal interprêté par la communauté.

    En ce qui concerne ton code, j'ai repéré une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    { ;$message1 .='le mot de passe doit comporter au moin 6 caractères et ne de passe pas 15,evitez des caractères speciales<br>';}
    Comme tu vois, il y a un point-virgule en début de traitement de condition.
    PHP doit te renvoyer une erreur de syntaxe, d'où une chaine avant le header.

    C'est peut-être autre chose aussi.

    Pour bien débugger un code, il faut passer par des echo et autre print_r afin de savoir ce qui se passe avant d'enchaîner sur un header.

    j'espère que ca pourra t'aider.

    j ai supprimer le ; mais meme sa le probleme reste j'espere que vous m'aidiez svp

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 99
    Points : 127
    Points
    127
    Par défaut
    Manifestement tu as soit une erreur PHP ou une erreur gérée par ton code.

    Il faudrait que tu ré-exécute ton code mais en commentant ton header en ligne 63 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    //header("location: login.php");}
    A mon avis tu auras des choses d'affichées...

  7. #7
    Futur Membre du Club
    Inscrit en
    Octobre 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par anthony89 Voir le message
    Manifestement tu as soit une erreur PHP ou une erreur gérée par ton code.

    Il faudrait que tu ré-exécute ton code mais en commentant ton header en ligne 63 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    //header("location: login.php");}
    A mon avis tu auras des choses d'affichées...
    je sais que le probleme et generé par la fonction header
    mais je peut pas l'eleminer il faut que je redirecte l'utilisateur apres son inscription y a til d autre solution??

  8. #8
    Futur Membre du Club
    Inscrit en
    Octobre 2010
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    vraiment c un probleme personne ne m a aider de le resolu meme si j ai met le code de la page entiere

Discussions similaires

  1. [AJAX] Liste déroulante pour afficher les informations en ajax div ?
    Par rob2-9 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 17/11/2006, 09h06
  2. Réponses: 7
    Dernier message: 28/10/2006, 19h07
  3. Probleme apres chgt carte graphique
    Par Noki dans le forum Administration système
    Réponses: 6
    Dernier message: 29/09/2006, 18h13
  4. probleme apres mis a jour
    Par Blo0d4x3 dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 18/08/2006, 21h36
  5. probleme apres changement du password du listener
    Par ORA_9i dans le forum Oracle
    Réponses: 1
    Dernier message: 26/11/2005, 12h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo