Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/09/2007, 11h26   #1
Membre régulier
 
Inscription : novembre 2005
Messages : 371
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 371
Points : 80
Points : 80
Par défaut textarea et mise en forme.

Bonjour le forum,

Cette quetion a été mainte fois posée et j'ai fais le tour du forum recherche, j'ai trouvé pas moins de 5 formules différentes et je mis perds completement, car les cas d'espèces cités a chaque fois me paraissent plus compliqués que le mien, et je crains que les solutions apportées ne correspondent pas a mon simple besoin.

Voici le pb :

J'ai un textarea simple dans lequel je fais des sauts de ligne et des alinéas.

Citation:
echo'<textarea rows="4" name="histoire" cols="35">'.$list['Histoire'].'</textarea>';
une fois taper sur le bouton valider, j'enregistre l'info dans ma bdd par soit un INSERT soit un UPDATE :

Citation:
$modif=mysql_query("INSERT INTO hist (histoire) VALUES ('$histoire')");

Y 'a t'il, s'il vous plait une syntaxe a intercaller quelques part pour enregistrer tel quel?

peut etre avec \r\n ou autres choses.

Merci et pardon de redemander encore une fois.
kaolivier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2007, 11h32   #2
Rédacteur/Modérateur
 
Avatar de N1bus
 
Inscription : janvier 2003
Messages : 2 018
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France, Charente Maritime (Poitou Charente)

Informations forums :
Inscription : janvier 2003
Messages : 2 018
Points : 1 992
Points : 1 992
Bonjour,

ça doit marcher comme ça, mais rajoute mysql_escape_string()

Code :
$modif=mysql_query("INSERT INTO hist (histoire) VALUES ('" . mysql_real_escape_string($histoire) . "')");
N1bus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2007, 11h46   #3
Membre régulier
 
Inscription : novembre 2005
Messages : 371
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 371
Points : 80
Points : 80
Merci de cette réponse, mais ou dois je rajouter mysql_escape_string(), car avec $modif=mysql_query("INSERT INTO hist (histoire) VALUES ('" . mysql_real_escape_string($histoire) . "')"); seul, j'affiche toujours un texte sans le retour chariot


J'ai vite ecrits deux programmes test pour illustrer mon pb :


http://www.test-internet.com/testarea.php
Code :
1
2
3
<form method="POST" action="test-valid.php"><br>
	  Histoire :<br><textarea rows="4" name="histoire" cols="35"></textarea>
	  <br><br><input type="submit" value="Valider l histoire" name="hist">';
et

http://www.test-internet.com/test-valid.php
Code :
1
2
3
4
5
6
7
8
<?
$server = ""; $user = ""; $password = ""; $base = ""; 
mysql_connect($server,$user,$password); mysql_select_db($base);
 
$result=mysql_query("SELECT * FROM test");
$modif=mysql_query("INSERT INTO test (histoire) VALUES ('".mysql_real_escape_string($histoire)."')");
echo "histoire :<br>$histoire"
?>
le resultat a l'affichage est sans retour chariot

Merci pour cette premiere réponse sympa
kaolivier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2007, 12h05   #4
Rédacteur/Modérateur
 
Avatar de N1bus
 
Inscription : janvier 2003
Messages : 2 018
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France, Charente Maritime (Poitou Charente)

Informations forums :
Inscription : janvier 2003
Messages : 2 018
Points : 1 992
Points : 1 992
Alors pour l'affichage avec les retours de chariots, utilises nl2br()
Citation:
Envoyé par DOC PHP
nl2br ( string string )

nl2br() retourne string après avoir inséré '<br />' devant toutes les nouvelles lignes.
Code :
1
2
 
echo "histoire :<br>" . nl2br($histoire);
N1bus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2007, 12h15   #5
Membre régulier
 
Inscription : novembre 2005
Messages : 371
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 371
Points : 80
Points : 80
Merci c'est parfait, juste une petite quesitone core et ce sera parfait de chez parfait :

Si je veux afficher le resultat dans un textarea pour qu'une personne puisse la modifier comment faire pour ne pas afficher les balises <br /> pour annoncer un retour chariot.

voici le code :
Code :
echo 'histoire :<br><textarea rows="4" name="histoire" cols="35">'. nl2br($histoire).'</textarea>';
Merci de ta patience
kaolivier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2007, 12h17   #6
Rédacteur/Modérateur
 
Avatar de N1bus
 
Inscription : janvier 2003
Messages : 2 018
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France, Charente Maritime (Poitou Charente)

Informations forums :
Inscription : janvier 2003
Messages : 2 018
Points : 1 992
Points : 1 992
Ben tu n'utilises pas nl2br() .

Code :
1
2
 
'<textarea rows="4" name="histoire" cols="35">'. $histoire .'</textarea>';
N1bus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2007, 12h30   #7
Membre régulier
 
Inscription : novembre 2005
Messages : 371
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 371
Points : 80
Points : 80
Merci à toi, j'ai mieux compris le fonctionnement, c'est parfait.

Trés bonne journée à toi
kaolivier est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h13.


 
 
 
 
Partenaires

Hébergement Web