Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1316 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  souci avec mon formulaire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

souci avec mon formulaire

n°1400033
mitch46000
Allez c'est partie !
Posté le 04-07-2006 à 11:12:57  profilanswer
 

bjr à tous ,
voila mon souci  
 
j ai 2 formulaires , A et B
 
je remplis le formulaire A avec des données j effectue des tests dessus et si tout est "ok" je mets à jour ma BDD sinon j affiche un message d'erreur...  
 
Mais dans le cas ou tout est "ok" j aimerai bien afficher la page B tout en effectuant mes tests sur la page A (juste avant de passer à la page B), mais cela ne marche pas qd j applique un "Onclick" ou "action" je vais vers la page B mais mes tests ne sont pas effectués ... :??: (on dirait que "Onclick" ou "action" feinte mes tests est passe directement à la page B)
 
En bref le truc que je veux realiser et la suivante :
 
si page A == ok  
----> mettre à jour mes données puis passer à ma page B
sinon
----> afficher les messages d erreur jusqu à validation du formulaire
 
voila si quelqu un a une idée ou plusieurs je le remerci d'avance !! :wahoo:  
 
 
 

mood
Publicité
Posté le 04-07-2006 à 11:12:57  profilanswer
 

n°1400075
AlphaZone
Posté le 04-07-2006 à 11:43:20  profilanswer
 

T'as essayé d'utiliser des booléens ?
 
Exemple :
Si page A == OK  
  UPDATE BD
  AffichagePageB = true
 
Si AffichagePageB == true
   Afficher
 
 
Qu'en dis-tu ?

n°1400084
mitch46000
Allez c'est partie !
Posté le 04-07-2006 à 11:45:23  profilanswer
 

non pas des booleens car mais test renvoi
--> "ok" si c'est bon
--> "pasok" si ce n'ets pas bon

n°1400089
wewen1
Sex, drugs and Rock'N Roll
Posté le 04-07-2006 à 11:48:05  profilanswer
 

Perso, je ferai un truc comme ça dans ton cas :
 
Si page A ok
header("Location:ton_url" );
 
Et ca marche très bien.

n°1400094
mitch46000
Allez c'est partie !
Posté le 04-07-2006 à 11:52:07  profilanswer
 

wewen1 a écrit :

Perso, je ferai un truc comme ça dans ton cas :
 
Si page A ok
header("Location:ton_url" );
 
Et ca marche très bien.


 
C'est exactement se que je fais mais il n'effectue pas les tests de mon form de la page A et je bascule directement sur a page B :heink:


Message édité par mitch46000 le 04-07-2006 à 11:52:45
n°1400101
wewen1
Sex, drugs and Rock'N Roll
Posté le 04-07-2006 à 11:56:16  profilanswer
 

Tu peux nous donner un bout de code avec les test et la ligne du header stp ?
 

n°1400107
mitch46000
Allez c'est partie !
Posté le 04-07-2006 à 12:01:22  profilanswer
 

Voici mon code :
 
 
 

Code :
  1. *****
  2. *test*-> retourne $verif ="ok" ou "pasok" selon les cas
  3. *****
  4. if($verif=="ok" ) {
  5. echo "<script language=JavaScript type=text/JavaScript>alert('Vos données ont bien été enregistrées');</script>";
  6.     // insertion d une nouvelle valeur à la base personne  
  7.  $requete_modif = "UPDATE personne SET nom=\"$r2\" , prenom=\"$r3\" , email=\"$r4\" ,
  8.    date_naissance=\"$r5\" , adresse=\"$r6\", ville=\"$r7\", cp=\"$r8\" ,
  9.    numero_tel=\"$r9\" , motpasse=\"$r10\"  WHERE pseudo_personne=\"$r1\" ";
  10.  //$resultat = mysql_db_query("vietnam",$requete_modif,$db);
  11.  echo $requete_modif;
  12.  $resultat=mysql_query($requete_modif);
  13.  }
  14. }
  15.  if (@$verif =="ok" )
  16.  header("Location: pageB.php" );
  17. *******************
  18. *affichage de  mon form*
  19. *******************

Message cité 1 fois
Message édité par mitch46000 le 04-07-2006 à 12:02:09
n°1400121
wewen1
Sex, drugs and Rock'N Roll
Posté le 04-07-2006 à 12:20:33  profilanswer
 

mitch46000 a écrit :

Voici mon code :
 
 
 

Code :
  1. if (@$verif =="ok" ) { // attention tu as oublié ça {
  2.  header("Location: pageB.php" );
  3. } // et on le ferme ici
  4. *******************
  5. *affichage de  mon form*
  6. *******************



 
Je sais pas si c'est la cause du pb mais vérifies déjà ça stp.

n°1400123
wewen1
Sex, drugs and Rock'N Roll
Posté le 04-07-2006 à 12:21:39  profilanswer
 

Comment tu a le retour pour verif. Tu passes un $_GET ?

n°1400126
mitch46000
Allez c'est partie !
Posté le 04-07-2006 à 12:24:52  profilanswer
 

non cela ne marche toujours pas mais j ai un message d erreur  
qui s affiche qui est le suivant
 

Code :
  1. j ai fais un echo de ma requete UPDATE personne SET nom="tt" , prenom="pp" , email="test@hotmail.fr" , date_naissance="1921-02-3" , adresse="117 impp", ville="cahors", cp="46000" , numero_tel="0565530106" , motpasse="123" WHERE pseudo_personne="davy64"
  2. Warning: Cannot modify header information - headers already sent by (output started at e:..:7) in e:.. on line 350


 
c'est le warning il correspont à quoi?

mood
Publicité
Posté le 04-07-2006 à 12:24:52  profilanswer
 

n°1400133
mIRROR
Chevreuillobolchévik
Posté le 04-07-2006 à 12:32:02  profilanswer
 

echo $requete_modif;
 
bah c est malin :sweat:
et comment tu veux envoyer ton header maintenant ?
 
edit :
j avais pas vu y un autre echo avant :/
tu peux *pas* utiliser la fonction header(); apres un echo d ou ton message d erreur


Message édité par mIRROR le 04-07-2006 à 12:37:09
n°1400134
Woutcha
Posté le 04-07-2006 à 12:34:07  profilanswer
 

wewen1 a écrit :

Je sais pas si c'est la cause du pb mais vérifies déjà ça stp.


 
La notation utilisee :  

Code :
  1. if (@$verif =="ok" )
  2.         header("Location: pageB.php" );


est parfaitement valide....
 
en revanche pour faire les choses correctement il faudrait mettre :

Code :
  1. if ($verif =="ok" ) {
  2.         header("Location: pageB.php" );
  3.         exit();
  4. }


n°1400147
wewen1
Sex, drugs and Rock'N Roll
Posté le 04-07-2006 à 12:48:29  profilanswer
 

Et si par exemple tu enlevé ton deuxième if et que tu faisais ça:

Code :
  1. if($verif=="ok" ) {
  2. // insertion d une nouvelle valeur à la base personne  
  3.         $requete_modif = "UPDATE personne SET nom=\"$r2\" , prenom=\"$r3\" , email=\"$r4\" ,
  4.              date_naissance=\"$r5\" , adresse=\"$r6\", ville=\"$r7\", cp=\"$r8\" ,                       
  5.              numero_tel=\"$r9\" , motpasse=\"$r10\"  WHERE pseudo_personne=\"$r1\" ";
  6.  //$resultat = mysql_db_query("vietnam",$requete_modif,$db);
  7.  $resultat=mysql_query($requete_modif);
  8. // Redirection
  9. header("Location: pageB.php?verif=ok" );
  10.  }


 
Et en page B
Tu mets
 

Code :
  1. if ($_GET['verif'] == "ok" ) {
  2. echo 'Vos données ont bien été enregistrées';
  3. // Puis le reste de ta page
  4. }
  5. else {}

n°1400159
AlphaZone
Posté le 04-07-2006 à 13:09:34  profilanswer
 

Pour virer le message d'erreur du header, il faut mettre ob_start(); tout en haut de ta page et ob_end_flush() tout à la fin.
 
Tu code un peu bizarrement. Cela te sert à quoi de faire @$verif ? Personnelement je n'en vois pas l'utilité. Et pour ce qui est de ta requête SQL, tu t'embête énormément.  
Exemple d'une syntaxe plus "lisible":

Code :
  1. $req = "UPDATE personne SET nom='".$r2."' , prenom='".$r3."' , email='".$r4."' , date_naissance='".$r5."' , adresse='".$r6."', ville='".$r7."', cp='".$r8."' , numero_tel='".$r9."' , motpasse='".$r10."' WHERE pseudo_personne='".$r1."'";


 
Pour info si pseudo_personne est une chaine de caractère alors ta syntaxe SQL est fausse. Il faut procéder comme ceci :

Code :
  1. $req = "UPDATE personne SET nom='".$r2."' , prenom='".$r3."' , email='".$r4."' , date_naissance='".$r5."' , adresse='".$r6."', ville='".$r7."', cp='".$r8."' , numero_tel='".$r9."' , motpasse='".$r10."' WHERE pseudo_personne LIKE '".$r1."'";


 
As-tu vérifié que tes variables _GET étaient bien définies avec la fonction isset() ???
 
Pense bien à faire un maximum de test. Plus tu feras de tests, plus t'es sur d'avoir un système "stable" en quelque sorte.


Message édité par AlphaZone le 04-07-2006 à 13:12:17
n°1400243
mitch46000
Allez c'est partie !
Posté le 04-07-2006 à 14:10:45  profilanswer
 

MErci à tous car grace a tous vos petits conseils cela marche comme je le voulais merci  :jap:  
 
sinon je sais , je code comme un petit cochon lol :sarcastic:


Message édité par mitch46000 le 04-07-2006 à 14:12:03

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  souci avec mon formulaire

 

Sujets relatifs
aide pour transfert de formulaire vers tableautransfert de données d'un formulaire versun tableau
problème de variable en boucle arrivant d'un formulairePetit souci pour instancier une classe
Formulaire+Page précédente sous IE[PHP]Problème de formulaire
[javascript] verifier présence input avant control formulairesouci de presentation dans mon formulaire
[resolu] Petit souci sur le php de mon formulairej'ai un souci de réception du formulaire
Plus de sujets relatifs à : souci avec mon formulaire


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)