Hello,
Voila bientot 5 ans que je n'ai plus touché de php, je m'y remets doucement... Seulement je bute contre un problème sans doute basique, mais que j'ai beau chercher comment, je n'arrive pas à m'en tirer...
En gros, j'ai un formulaire contenant une textarea, contenant des retours chariot. Je l'envoie donc par formulaire via $_POST et la récupère de l'autre côté, ou elle est sensé être insérée dans ma base de données. Seulement, si l'utilisateur ne remplis pas tous les autres champs, j'aimerai que la textarea soit re-remplie avec son contenu précédent. J'ai fais un petit code de test, mais visiblement les retours chariot me pose problème. Voici les codes en questions :
Page du formulaire de test
et la page d'action
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php $a = $_GET['a']; ?> <body><form action="testaction.php" method="post" name="testArea"> <textarea name="resume" cols="60" rows="10" wrap="physical"></textarea> <input name="send" type="submit" value="Envoyer" /> </form> <?php echo $a; ?> </body> </html>
J'ai essayé plusieurs choses, placer la variable $a dans l'url sans utiliser aucune fonction, essayé d'utiliser nl2br, str_replace... J'ai un vague souvenir qu'il y avait moyen de remplacer les retours chariot par des %20 ou truc du style, mais je ne trouve plus comment.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php $a = $_POST['resume']; $a = str_replace('\r\n', '%20', nl2br($a)); echo $a; header ('Location: entree.php?a='. $a); //echo $texte; ?>
Au final, j'ai l'erreur suivante qui sort à chaque fois :
Si quelqu'un à un exemple concret de comment gérer les textareas, je suis preneur, parce que je ne trouve rien de valable...
Code : Sélectionner tout - Visualiser dans une fenêtre à part Warning: Header may not contain more than a single header, new line detected. in /home/users3-new/p/psychee/www/conv/tests/testaction.php on line 8
Partager