Probleme de textarea, nl2br.....

Résolu
lassad_haddaji Messages postés 141 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 6 avril 2012 - 4 août 2008 à 14:10
sagat06 Messages postés 166 Date d'inscription mercredi 27 juin 2007 Statut Membre Dernière intervention 31 mars 2014 - 10 sept. 2009 à 19:17
salut,
jai un probleme un peu compliquer peut etre de me comprendre, j'esaaie d'expliquer le plus possible parce que j'espere que me trouver une solution parce que ca me gene,

donc le probleme est que j'utilise un champs textarea pour enregistrer dans la base mysql la description, donc les utilisateur fais de retour chariot(tape sur entrer dans textarea) cela provoque une erreur lors l'affichage dans une infobulle d'un marker google, donc jai fais une tour sur les forum, j'ai trouver la solution de convertir les retour a la ligne est le nl2br (
)... bon ce qu'il affiche est le suivant:
/////////////////enregistrement dans la base mysql
ligne1

ligne 2

ligne 3
////////////dans l'autre côté pour que l'affiche tres bien il dois etre le message comme ca
ligne1
ligne 2

ligne 3

//sur meme ligne
jai utiliser trop de fonction comme str_replace, htmlentities........

merci de me donner une idé pour que j'enregistre la zone descriptif dans la base de cette forme ou bien je le recupere et apres je le transforme de cette forme.

Merci

8 réponses

lassad_haddaji Messages postés 141 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 6 avril 2012
5 août 2008 à 04:26
bonjour,
oupis jai trouvé la solution j'espere qu'elle serve quelqu'un d'autre,
donc lors de l'eregistrement dans la base on supprime les retour chariot et retour a la ligne et on le remplace par

$text=str_replace("\r\n", "
", $_POST["desc"]);
apres tu fais la requete d'insertion
$sql="insert into $table values(.......,'".$text."')";

Merci pour tout qui on voulu de m'idé
Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
4 août 2008 à 15:43
tu enregistres en brut, et tu fais le nl2br uniquement a l'affichage.
lassad_haddaji Messages postés 141 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 6 avril 2012
4 août 2008 à 17:23
merci de l'idée, bon j'ai essaie votre idée mais ce ke je suis besoin cé une autre chose cause de probleme de retour a la ligne.
////////fichier pour recuperer les donner
echo var point = new GLatLng('.$rows['latitude'].', '.$rows['longitude'].');';
echo 'var marker = createTabbedMarker(point, '.$a.', '.$b.', '.$c.',"Résumé", "Descriptif", "Commenter", baseIcon);';
echo 'map.addOverlay(marker);';

///fichier de l'affichage

<script language="javascript">
var point = new GLatLng(43.2089777778, 5.59338611111);
var marker = createTabbedMarker(point, ligne1 ligne1 ligne1

ligne2 ligne2 ligne2

ligne3 ligne3 ligne3, "
tsete</teste>, "
teste teste teste
","Résumé", "Descriptif", "Commenter", baseIcon);
map.addOverlay(marker);

</script>

//mais le bonne code doit etre comme ca
<script language="javascript">
var point = new GLatLng(43.2089777778, 5.59338611111);
var marker = createTabbedMarker(point, ligne1 ligne1 ligne1

ligne2 ligne2 ligne2

ligne3 ligne3 igne3, "
tsete</teste>, "
teste teste teste
","Résumé", "Descriptif", "Commenter", baseIcon);
map.addOverlay(marker);

</script>

il dois etre l'affichage comme ca:

merci de me repondre
Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
4 août 2008 à 19:54
donne ton code en entier (enregistrement dans la base, et affichage)

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lassad_haddaji Messages postés 141 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 6 avril 2012
4 août 2008 à 20:05
//fichier d'enregistrement ajout.php

<?php
.............
$return_checkbox = implode(' ', $_POST['radiobutton']);



$sql = "INSERT INTO tb_evenmaps_marker VALUES ('', '".$_POST['lat']."', '".$_POST['lgt']."', '".$return_checkbox."', '".$_POST['desc']."', '".$_POST['title']."')";
mysql_query($sql);
mysql_close();

.......
?>
//fichier d'affichage recuperer les donner de la base afficher.php

<?php
...........
while($rows=mysql_fetch_array($res))
{

$a='"
'.$rows['title'].'
'.$rows['lien_icone'].''.nl2br($rows['descript']).'

"';
$b='"

Latitude: '.$rows['latitude'].'
Longitude: '.$rows['longitude'].'

'.rating_bar('id21','').'

"';
$c='"

('.$dat.') commentaires

Faites un commentaire:
<form name="formu" method="post">
Nom *:

Titre *:

Commentaire:
<textarea onkeyup="limite(this, 300);" onkeydown="limite(this, 300);" name="comment" style="width:250px; height:100px; "></textarea>

300 caractères restants

</form>

"';
echo 'var point = new GLatLng('.$rows['latitude'].', '.$rows['longitude'].');';
echo 'var marker = createTabbedMarker(point, '.$a.', '.$b.', '.$c.',"Résumé", "Descriptif", "Commenter", baseIcon);';
echo 'map.addOverlay(marker);';



......

?>


//fichier d'affichage index.php


<script>
<?php include('affiche.php');
</script>
setasan9 Messages postés 98 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 16 mars 2009
16 mars 2009 à 19:39
Punaise tu me sauve la vie, merci !
Ca va faire des heures que je cherche a résoudre se probleme qui était :




"PHP me retourne correctement les sauts de ligne dans la source mais saute également les ligne dans la source..
Au lieu d'un affichage continu."




Ce qui foirait ma fonction javascript.

Merci !!
lassad_haddaji Messages postés 141 Date d'inscription mardi 24 avril 2007 Statut Membre Dernière intervention 6 avril 2012
16 mars 2009 à 20:04
tu as de la chance que tu n'as pas resté deux semaines comme moi ;)
















ma réponse vous convient
sagat06 Messages postés 166 Date d'inscription mercredi 27 juin 2007 Statut Membre Dernière intervention 31 mars 2014 1
10 sept. 2009 à 19:17
Cool, je commençais à galérer ^^
Content de n'être resté bloqué qu'une après-midi (bien saoûlante d'ailleurs).

Merci lassad.

Signé Sagat
Rejoignez-nous