Probleme retour a la ligne java+php

Signaler
Messages postés
16
Date d'inscription
samedi 30 août 2003
Statut
Membre
Dernière intervention
16 juin 2004
-
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
-
Bonjour,

Voila j'ai un probleme :

dans un script j'alli Php et javascript :
je recupere un ou plusieur texte dans ma base de données grace a un while et je les enregistre dans un array javascript mais j'ai un probleme lorsque mon texte contient un retour a la ligne... le script ne s'execute pas. Voici le script d'apelle des texte :

while ($donnees=mysql_fetch_array($reponse)) {
$x1++;
$texte=str_replace("
", "\n", $donnees["texte"]);
?>
choixmess[<? echo $x1 ?>]="<? echo $texte ?>";
<?
}
?>

et l'ecriture dans la base de données via un textarea :

$texte=str_replace("\n", "
", $texte);
$sql="INSERT INTO noodle_intro VALUES('', '$texte')";
echo "<center>Ajout éfféctué avec succès.
Retour";
mysql_query($sql);

et si possible j'aimerai savoir comment retirer les scrollbars d'un textarea (surtout celle de droite lol)

"La vie est le rêve de la mort... La mort est la vie du rêve..."

13 réponses

Messages postés
5
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
24 novembre 2009

Bonjour,
Je suis dans le même cas que toi en faite quand mon javascript récupère la valeur de ma base de donnée elle retranscrit le retour à la ligne se qui créer un bug de lecture du javascript (je le vois avec firebug).
Cela fais maintenant 6 mois et un paquet de forum que je fais et tout se que l'on m'as donnée jusqu'à maintenant ne fonctionne toujours pas.
Par désespoir j'essaye de modifier en faite se que je rentre dans ma base de donnée en essayer de supprimer ses retour à la ligne et de tout mettre dans une variable en une seule ligne avec les "br" approprié mais bon la encore je bloque sur mon javascript qui dois modifier mon char13 par un br et supprimer se char13.
Si tu trouve une solution merci de me la communiquer ça m'aidera beaucoup
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
Bonjour,
si vous reprenez des messages de 2004 pas
étonnant que les aides/réponses tardent !
de plus, sans aucune infos sur ce que
vous faites réellement, on ne peut que
deviner, ça tombe bien je suis un expert :
allez sur mon site vous pouvez avoir votre
thème astrologique, votre thème numérologique,
je peux aussi vous faire les lignes de la main,
( pas encore les tarots, mais ça ne devrait
plus tarder )
pour votre souci, si vous êtes sûr que c'est coté
javascript ( rien n'est moins sûr !!! ), regardez
donc [un]escape, par exemple
Cordialement [mon Site] [M'écrire] Bul
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
mais au vu du 1er message, je pencherais
plutôt pour une génération erronée du html
par le php... c'est peut-être aussi votre cas.
j'interroge les étoiles pour être sûr.
Messages postés
5
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
24 novembre 2009

Bas aussi qu'elle idée de garder des trucs de 2004 !!
Si j'ai tout compris c'est pas encore ici que je résolverai mon problème.
Bon bas je vais continuer de airé dans les sites.
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
vous ne le résoudrez nulle part
si vous ne donnez pas plus d'infos !!
rares sont les télépathes qui passent
sur les forums pour aider.
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
je pense même que je vais avoir du mal
à vous faire comprendre...
ch'tiot exemple :
<form method="post">
<textarea name="txt">
ligne 1
ligne 2
</textarea>

</form>
<?php
if ( isset($_POST['txt']) )
{	?>
<textarea><?php echo $_POST['txt']; ?></textarea>
<script>
alert("<?php echo $_POST['txt'];?>"); 
// comme ça plante !!!! et pour cause 
alert("<?php echo str_replace( "\r\n" , '' , $_POST['txt']);?>");
// par exemple !!! comme ça, ça marche
</script>
<?php
}
?>

Messages postés
5
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
24 novembre 2009

Pour votre explication pas de problème j'ai compris qu'il fallait faire la décomposition dans le <script> . Ça j'ai déjà essayer et rien à faire ca ne fonctionne pas car comme il est marqué dans l'exemple du haut j'arrive d'une base de donnée.
Seul chose que je comprend pas c'est le '' ?? il sort d'où ??
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
c'est bien ce que je craignais !!
$_POST['nimporte'] ou $nimporte ou mysql_result...
ou n'importe quoi, c'est pareil
de là où vient l'information n'a
AUCUNE ESPECE D'IMPORTANCE !! bien entendu !!
pour l'exemple j'ai mi un textarea, j'allais
même mettre une variable, mais j'étais sur
que vous n'auriez pas compris et que vous alliez
me dire "ben moi ça marche pas, c'est une base de
données" ;o)))
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
je vais tenter de vous expliquer ça simplement !
[*] coté php, vous avez une chaîne de caractères
qui contient des "passages à la ligne"
par exemple ( avec <rc>=passage à la ligne )
$txt="ligne 1<rc>ligne 2<rc>suite";
et vous voulez l'utiliser en javascript.

que cette chaîne provienne de n'importe où
( base de données, champ de saisi, calcul ... )
n'a aucune espèce d'importance !
[*] si vous faites var toto="<?php echo $txt;?>";
ça va générer
var toto="ligne 1
ligne 2
suite";

et ça, ça ne plait pas au javascript : erreur de syntaxe

[*] solutions :
_ mettre cette chaîne dans un textarea et utiliser son .value
_ remplacer les <rc> par ce qui vous convient, si vous
tenez à tout prix à utiliser directement, et ce coté php
bien entendu
reste à déterminer
la valeur du retour à la ligne
parlons héxa, en général c'est 0D0A ( "\r\n" ), par
exemple dans un champ de saisi, c'est quoi dans la
votre de chaîne de caractères 0A ? 0D ? 0D0A ? 0A0D ?
ou autre chose ???? ne sachant ni ce que vous
stockez, ni comment, ni où ( quelle base de
données ? hein ? ), n'étant pas télépathe,
et ayant cassé ma récemment ( vous n'avez pas de bol ),
je ne parviens plus à rien deviner
_ ... ou autres
Messages postés
5
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
24 novembre 2009

Comme quoi votre boule de cristal fonction bien car c'est bien ça mon problème se que je retourne dans mon javascript fais bien

var toto="ligne1

ligne2
suite;

Et comme vous l'avez bien deviné javascript fait une erreur de syntaxe.

En faite je retranscrit un tableau SQL en javascript, pour pouvoir manipuler dynamiquement l'affichage des données. Donnée qui sont rentré par l'utilisateur dans un textarea et qui sont enregistrement en brut dans ma base (donc avec les retour chariot)
Ensuite lorsque je charge ma page j'ai 3 parti
1- la partie commun.php (fichier ou je mets tout se qui est commun à mes pages).
2-le fichier index.php (fichier avec le contenant de la page).
3-le fichier Struct.php (fichier qui affiche la structure de la page).


dans le fichier commun.php j'ai :

$lTableCommentairePhoto=acces_base("SELECT * FROM COMMENTAIRE ","SELECT");
$Commentaire="";
for($i=0;$i<$lTableCommentairePhoto['Retour'];$i++){
$Commentaire.="table_commentaire[".$i."]=new Array(); \n
table_commentaire[".$i."][0]="".$lTableCommentairePhoto[$i]['COMMENTAIRE'].""; \n";

et dans mon fichier struct.php j'ai:

var table_commentaire=new Array();
<?php print($Commentaire); ?>

De la je pense que j'ai totalement tord de le faire comme ça et que c'est peux être ça qui créer la merde. Donc je suis en train de réfléchir à une variable qui serai utilisé sur le textarea pour supprimer ses retours à la ligne se qui ne fonctionne toujours pas car il ne veux pas me le supprimer se foutu retour de chariot! et après 4 mois de recherche j'ai un peux abandonner le script aussi
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
relisez ce que je disais, j'explique
comment palier à l'erreur faite,
même s'il y a d'autres approches.
après, vos histoires de multiples .php,
n'ont guère ( aucune ) d'importance
>>car c'est bien ça mon problème
et si vous l'aviez dit tout de suite ?
on aurait été plus vite, et je n'aurais
pas du étriper un poulet pour lire dans
ses entrailles pour comprendre
>>après 4 mois de recherche
???
vous auriez du poser la question avant !
car ça se résout assez simplement... me semble-t-il.
Messages postés
5
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
24 novembre 2009

Ca fais 4 mois que je pose la question et tout le monde ma donner la solution du str_replace avec 'NLDR' ou '\n' ou '\r' mais personne avec '\r\n' et de plus personne ne m'as dis qu'il fallait que gère ma variable en sortie et non pas en création !!
C'est votre exemple qui m'as fais le dé clique, car je gère 3 pages en même temps et je mélange ma fonction 'lib' pour aller dans la base de donnée, la récupération du tableau de la base de donné, la transformation dans la variable de ma base de donnée, et mon affichage dans mon javascript.
Après plusieurs essaie, j'ai réussi à faire se que je voulais à la différence que je me retrouve à le faire en une seule ligne car le système ne peux pas gérer les différence, mais bon tant que ça fonctionne je m'en fiche j'ai trouvé la solution, merci encore de votre aide !! après 4 mois je vais pouvoir avancer mon site !!
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
12
suffit de venir sur le bon forum quoi ;o)))
nickel si ça baigne