Saut de ligne à l'insert dans MySQL [Résolu]

Messages postés
337
Date d'inscription
vendredi 15 octobre 2004
Dernière intervention
2 novembre 2010
- - Dernière réponse : cod57
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Dernière intervention
11 septembre 2013
- 2 nov. 2010 à 10:38
Bonjour,
j'ai un soucis avec l'insert des sauts de ligne.

Sous PHP 5.3, MySQL 5.1.36

Suite d'actions:
- j'écris dans un textarea avec les sauts de ligne,
- event onsubmit: j'envoies vers javascript
- requête AJAX pour l'insert dans MySQL via ma page PHP.
- pour l'insert du texte brut, aucune modif du string ($string = $_GET['string']; puis insert via PDO exec)
Ensuite:
- pour récupérer l'affichage dans une div <?php echo nl2br($result['string']); ?> (via une requête query PDO)

Problème:
aucun saut de ligne enregistré dans MySQL (mon champ est de type TEXT , utf8_bin)

Comme la méthode est la bonne (j'ai cherché sur le Web avant de poster ;) )
J'en déduis qu'il y a une subtilité niveau PHP (ou Appache ou MySQL).

Si quelqu'un a déjà rencontré le pb...
merci
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
337
Date d'inscription
vendredi 15 octobre 2004
Dernière intervention
2 novembre 2010
3
Merci
En utilisant le test de cod57 on peu conclure que le pb vient de javascript.

Pour ceux qui un jour seront confrontés à ce problème, j'ai trouvé la solution ici:
http://www.webmasterworld.com/javascript/3463291.htm

escape(textareaValue)

Merci BananaTree 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de BananaTree
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Dernière intervention
11 septembre 2013
0
Merci
salut

je te propose

$result['string'] = str_replace("\r"," ",$result['string']);
$result['string'] = str_replace("\n","
",$result['string']);

dis-nous si ça marche ?
Commenter la réponse de cod57
Messages postés
337
Date d'inscription
vendredi 15 octobre 2004
Dernière intervention
2 novembre 2010
0
Merci
cod57,

ça ne marche pas.
j'ai fait:
function test($string){
$temp = str_replace("\r"," ",$string);
$temp = str_replace("\n","
",$temp);
return $temp;
}

je suppose qu'il y aurait du y avoir des
dans mon champ MySQL, mais c pas le cas.
Commenter la réponse de BananaTree
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Dernière intervention
11 septembre 2013
0
Merci
@BananaTree

Merci pour ton message je garde ton lien a++
Commenter la réponse de cod57

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.