ne ps perdre un champ valide lors d'un post en php - PHP - Programmation
Marsh Posté le 14-06-2005 à 09:44:10
?? je vois pas vraiment la difficulté.
Lors du click sur ton bouton submit, tu appelles une page qui va traiter les informations de ton formulaire.
Il suffit de placer dans des variables tous les champs qui sont ok. Tu nommes ces variables, par exemple, $ok_login, $ok_city, ...
Par défaut elles sont vides, et tu leur donne la valeur passée en $_POST par l'utilisateur si la valeur est correcte.
Ensuite il suffit d'afficher ces variables dans tes champs grace aux attributs de balises value="".
Si c'est pour un textarea, il faut <textarea name...>$ok_montexte</textarea>
Soit j'ai vraiment pas compris ce que tu veux, soit c'est excessivement simple
Marsh Posté le 14-06-2005 à 09:44:32
Code :
|
Marsh Posté le 14-06-2005 à 09:47:22
Salut,
dans la partie du code où tu traite les données en provenance du formulaire, tu teste si la valeur saisie est valide, si oui tu la stocke dans une variable de session.
Si redirection il y a vers le formulaire, tu teste si la variable de session est définie, si oui tu l'affiche dans le champs correspondant.
Code :
|
Marsh Posté le 14-06-2005 à 10:07:58
Worldofdada a écrit : ?? je vois pas vraiment la difficulté. |
non ce n'est pas si simple autrement je pense que je serai vraiment un tres mauvais codeur!!
lorsque je vais ce que tu dis voici ce que j obtient:
<br /><b>Notice</b>: Undefined index: ste in <b>c:\program files\easyphp1-8\www\inscription.php</b> on line <b>49</b><br />
Marsh Posté le 14-06-2005 à 10:11:04
j_lecruel a écrit : Salut,
|
ok les variable de sessions doit etre la solution cependant j'utilise easyphp et voici les message d'erreur que j'obtient :
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\program files\easyphp1-8\www\inscription.php:9) in c:\program files\easyphp1-8\www\inscription.php on line 54
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp1-8\www\inscription.php:9) in c:\program files\easyphp1-8\www\inscription.php on line 54
je ne sais pas a quoi cela correspond...
Marsh Posté le 14-06-2005 à 10:24:04
Tu dois placer ton session_start() avant l'envoi des headers (donc apparement avant la ligne 9).
Marsh Posté le 14-06-2005 à 10:25:38
tu recuppere ou les donnes de ton formulaire?dans une base de donnee ou sur un autre formulaire?
donne nous aussi ton code.
Marsh Posté le 14-06-2005 à 10:47:47
Code :
|
c'est du code test d'une page que j'ai fais pour commencer...
Marsh Posté le 14-06-2005 à 10:55:23
ATTENTION !!!! Ton session start doit etre avant tout, meme pas un espace devant ni rien qui gène :
Code :
|
en début de code, ça enlèvera déjà ton erreur de sessions...
Marsh Posté le 14-06-2005 à 10:57:16
Et ce topic il te plaisait plus?
http://forum.hardware.fr/hardwaref [...] 2192-1.htm
Marsh Posté le 14-06-2005 à 11:02:43
ReplyMarsh Posté le 14-06-2005 à 11:06:00
non meme en mettant session_start au debut g les 2 erreurs...pfff
sa vien peut etre d'easy php tout simplement peut etre qu il faut que je jette un oeil sur php.ini???
Marsh Posté le 14-06-2005 à 11:07:25
rohh normalement sur easy php les sessions sont activée dés le début.. Que donne le php info??
Marsh Posté le 14-06-2005 à 11:09:29
micfont999 a écrit : rohh normalement sur easy php les sessions sont activée dés le début.. Que donne le php info?? |
le php info?
Marsh Posté le 14-06-2005 à 11:10:16
zit_zit a écrit : non meme en mettant session_start au debut g les 2 erreurs...pfff |
Tu n'a bien RIEN DU TOUT, PAS MEME UN ESPACE avant?
Marsh Posté le 14-06-2005 à 11:13:29
skeye a écrit : Tu n'a bien RIEN DU TOUT, PAS MEME UN ESPACE avant?:o |
ba g un espace <?[ici]session_start(); mais si je colle contre le ? sa fou la merde enfin sa ne reconnais pas un ouverture de script
Marsh Posté le 14-06-2005 à 11:14:27
zit_zit a écrit : ba g un espace <?[ici]session_start(); mais si je colle contre le ? sa fou la merde enfin sa ne reconnais pas un ouverture de script |
avant le <?, évidemment, pas avant session_start()...
Marsh Posté le 14-06-2005 à 11:17:02
skeye a écrit : avant le <?, évidemment, pas avant session_start()...:o |
Code :
|
voici le code tel ... et les message d'erreur avec:
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\program files\easyphp1-8\www\test_base_donnee.php:8) in c:\program files\easyphp1-8\www\test_base_donnee.php on line 9
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp1-8\www\test_base_donnee.php:8) in c:\program files\easyphp1-8\www\test_base_donnee.php on line 9
Marsh Posté le 14-06-2005 à 11:18:07
Donne la ligne9 et un peu avt un peu après please ::: de 6 à 12 on va dire ...
Marsh Posté le 14-06-2005 à 11:18:31
Il y a vraiment uniquement ça dans ton fichier?
Marsh Posté le 14-06-2005 à 11:18:39
micfont999 a écrit : Alors la session est merdique et ne récupère rien.. |
ok et ...du coup je fais koi??
Marsh Posté le 14-06-2005 à 11:26:07
zit_zit a écrit : ok et ...du coup je fais koi?? |
Je viens de te le dire ^^
Donne voir ton code de la ligne 6 à 12 please..
Merki
Marsh Posté le 14-06-2005 à 11:26:48
(moi je veux tout le code, pas seulement 5/6 lignes.:o)
Marsh Posté le 14-06-2005 à 11:30:58
Code :
|
voila tout mon code ba bien complexe...
Marsh Posté le 14-06-2005 à 11:32:03
ESPECE DE GROS BOULET§§§§§§§§§§§§§§§§§§§!!
ON A DIT RIEN DU TOUT AVANT§§§§§§§§§§§
Marsh Posté le 14-06-2005 à 11:32:30
(oui, j'avoue m'énerver un peu, mais je le voyais venir gros comme une maison...)
Marsh Posté le 14-06-2005 à 11:34:28
MDR ::: du calmeeee...
Code :
|
Voila comment procédé..
Quand on te disai avant c'est avant toute forme de vie extraterrestre (eu désolé je débloque, lol ) non mais plus sérieusement avant tout code de ta page... ^^
Voila
Marsh Posté le 14-06-2005 à 11:34:35
Rien du tout, ça veut aussi dire pas de
Citation : |
Marsh Posté le 14-06-2005 à 11:36:28
skeye a écrit : Rien du tout, ça veut aussi dire pas de
|
Bo c'est pas génant, peu etre pour le DOCTYPE, mais la suite ne dérange pas..
Marsh Posté le 14-06-2005 à 11:38:58
micfont999 a écrit : Bo c'est pas génant, peu etre pour le DOCTYPE, mais la suite ne dérange pas.. |
on parie?
Marsh Posté le 14-06-2005 à 11:42:00
+1 , tous avec skeye !
RIEN avant un session_start didiou !
Marsh Posté le 14-06-2005 à 11:43:54
plainsofpain a écrit : +1 , tous avec skeye ! |
Crévindieu, mais je dit la même chose de ce coté la...
Mais après remettre le code html de base ne pose pas de problème, en tout cas ça ne m'en à jamais posé..
Marsh Posté le 14-06-2005 à 11:44:12
plainsofpain a écrit : +1 , tous avec skeye ! |
On notera au passage qu'il a la réponse sous les yeux depuis hier et qu'il aurait pu s'il avait un tout petit peu essayé de comprendre se démerder tout seul...
http://forum.hardware.fr/forum2.ph [...] 5#t1118075
Marsh Posté le 14-06-2005 à 11:45:37
micfont999 a écrit : Crévindieu, mais je dit la même chose de ce coté la... |
Tu as dû mal comprendre mon post. J'ai aps dit qu'écrire <html> etc. posait problème, j'ai dit que le faire avant session_start posait problème, même si la balise <?php n'était pas encore ouverte.
Marsh Posté le 14-06-2005 à 11:46:55
skeye a écrit : (oui, j'avoue m'énerver un peu, mais je le voyais venir gros comme une maison...) |
ok t enrve pas... mais ou ??? de koi tu parle excuse moi
Marsh Posté le 14-06-2005 à 09:38:41
bonjour a tous ...
en gros sa doit faire la 3 eme fois que j'essaie d'avoir une reponse a cette question et sans grand resultat...desolé d'etre lourd mais je suis vraiment bloqué... je souhaiterai just savoir comment réafficher des données rentré dans un formulaire( php), car comme vous le savez pour récupérer des données on utilise la methode post ou get qui efface les données saisis dans les champs..de ce faite comment faire pour que les champ qui sont bon reste intact!!!ou plus qu ils ne disparaissent pas!! de maniere a ne pas les rattaper.... j'espere avoir ete assez claire
merci bcp pour votre aide...