OVH Cloud OVH Cloud

textarea, récupérer les n

28 réponses
Avatar
unbewusst.sein
si je fai un retour à la ligne "\n" ou autre \r ils n'apparaissent plus
après sauvegarde dans une base SQLite. Ni même, donc avant SQL, dans le
js qui lit le contenu par :
var val=document.getElementByIf('monid').value sur le textarea en
question.

normal ca ???

--
« Qui veut cherche un moyen.
Qui ne veut pas cherche une excuse. »
(Proverbe chinois)

10 réponses

1 2 3
Avatar
yamo'
Une Bévue a tapoté, le 25/08/2011 22:43:
si je fai un retour à la ligne "n" ou autre r ils n'apparaissent plus
après sauvegarde dans une base SQLite. Ni même, donc avant SQL, dans le
js qui lit le contenu par :
var val=document.getElementByIf('monid').value sur le textarea en
question.

normal ca ???



En javascript, tu dois pouvoir les récupérer après, une fois
postés/enregistrés en base s'ils disparaissent, l'astuce serait de les
remplacer par un caractère ascii non visible et donc non utilisé par
l'internaute et ensuite de faire la transformation inverse pour les
récupérer.


D'après
<http://www.bennadel.com/blog/161-Ask-Ben-Javascript-Replace-And-Multiple-Lines-Line-Breaks.htm>,
j'ai commis ça : <http://pasdenom.info/test/textarea.html>.




--
Stéphane

<http://pasdenom.info/fortune/>

Ignorance est mère de tous les maux.
-+- François Rabelais (1494?-1553), Cinquième livre (chap. 7) -+-
Avatar
SAM
Le 26/08/11 10:42, Une Bévue a écrit :
SAM wrote:

Oui, c'est la merde ces retours de lignes (sont-ils volontaires ou wrapés ?)



Ben non, c'est pas ca,



ben si, un peu,
- pour échanges avec BdD
- pour ré-afficher qque part

peut-être est-ce que c'est la base SQLite qui "mange" ces n, je ne pige
pas.



voir un peu ce qu'on peut en dire pour MySql, par exemple ?
(c'est souvent très mal géré sur de nombreux sites où les retours forcés
entrés dans une fenêtre de texte de formulaire ont disparus à la soumission)

(...)
infos=document.getElementById('infos').value;
var ary=infos.split(/[n|r]/g);



pour le split, ceci suffit :
var ary=infos.split(/[nr]/);
pas besoin du g

et pas besoin du | entre [ et ]
c'est la signification des crochets (ou)
et avec qques "astuces" ... [0-9] --> 0 ou 1 ou ... jusque 9


<!-- wrap : Ses valeurs possibles sont : hard / off / soft
détermine si les retours à la ligne se font
automatiquement (hard / soft)
ou si une scrollbar horizontale apparait en cas
de dépassement (off) -->



Là j'ai rien compris ... quoi-qui-comment met cet attribut wrap ?

<textarea id='infos' name='infos' rows='16' cols='56' wrap='off'



(...)
donc, ça roule en tk côté js html.



oui.

me reste donc à investiguer SQLite à ce sujet et SURTOUT vérifier mon
code, mais je ne vois pas comment j'aurais supprimé les n...



Les nr n'y sont pas des 'séparateurs' ? (de fiche ou de cellule)
automatiquement supprimés des strings à leur stockage ...


idée pour insertion/stockage :
val = document.getElementById('infos').value;
val = val.replace(/nr/g),'n'); // ou autre dans cette idée
envoi-en-SQLite(val);

--
Stéphane Moriaux avec/with iMac-intel
Avatar
SAM
Le 26/08/11 10:54, Une Bévue a écrit :
SAM wrote:

mais non, pas de "ou" :
[nr ]



ben, tu veux dire qu'il y a tjs un r derrière un n, je ne pige pas...




non je veux dire que le 'ou' est toujours dans []
c'est la signification de ces [ ]
donc pas la peine de l'y remettre
sauf si tu cherches aussi le caractère '|' ??? !!!


si tu cherches exclusivement : nr
ce sera avec :
/(nr)/g

et pour : n ou r ou nr
ce sera :
/(n|r|nr)/g
histoire de ne pas en louper ? ;-)


en résumé :
/[nr]/g
ou :
/(n|r)/g
ou :
/n|r/g

--
Stéphane Moriaux avec/with iMac-intel
Avatar
SAM
Le 26/08/11 10:54, Une Bévue a écrit :

et le php recoit par :
$_GET["infos"]



ha! ben voilà !

y a + à chercher + loin
c'est encore ce PHP de m...e qui nous englue de m...e aussi

voir les pb de passage des '' à conserver dans les strings en PHP

<http://www.google.fr/search?q=passage+des+%27%27+%C3%A0+conserver+dans+les+strings+en+PHP>

stripslashes
htmlentities
nl2br
et autres joyeusetés du PHP ?

tester :
echo 'Ceci n'affichera pas n de nouvelle ligne';
et
echo "Ceci n'affichera pas n de nouvelle ligne";
ou :
echo "Ceci n'affichera pas n de nouvelle ligne";
et puis :
echo "Ceci n'affichera pas n de nouvelle ligne";
pour voir lesquels n'ont réellement pas de retours

--
Stéphane Moriaux avec/with iMac-intel
Avatar
unbewusst.sein
Une Bévue wrote:

à mon avis, c'est là MON erreur, je dois sans doute avoir à faire un
urlencode côté js et decode côté php, qqc du genre...



je viens de tester en m'appuyant sur le site php.js :
<http://phpjs.org/functions/rawurlencode:501>

avec la function js :
function rawurlencode(str) {
str=(str + '').toString();
return encodeURIComponent(str).replace(/!/g,
'%21').replace(/'/g, '%27').replace(/(/g, '%28').
replace(/)/g, '%29').replace(/*/g, '%2A');
}

j'encode l'URL :
var essais="Première lignenSeconde lignenTroisième lignennnnF:I:N"

document.getElementById('php').innerHTML="<a
href='urldecode.php?essais="+rawurlencode(essais)+"'>E:S:S:A:I:S</a>";



et côté php :
<?php
header('Content-type: text/html; charset=utf-8');
echo '<textarea id="infos" name="infos" rows="16" cols="60"
wrap="off" readonly>'.$_GET["essais"].'</textarea>';
?>

et là, ca roule )))
--
« L'amour n'a pas de meilleur ministre que l'occasion. »
(Miguel de Cervantès)
Avatar
unbewusst.sein
SAM wrote:

non je veux dire que le 'ou' est toujours dans []
c'est la signification de ces [ ]
donc pas la peine de l'y remettre
sauf si tu cherches aussi le caractère '|' ??? !!!



Y:E:S U're right !!!
--
« Nous autres français avons la particularité d' être universels. »
(Paul Valéry)
Avatar
unbewusst.sein
SAM wrote:

stripslashes
htmlentities
nl2br
et autres joyeusetés du PHP ?



avec le rawurlencode de php.js (que je ne connaissais pas jusqu'ici) il
suffit de faire un urldecode en php...

--
« Nous autres français avons la particularité d' être universels. »
(Paul Valéry)
Avatar
unbewusst.sein
yamo' wrote:

En javascript, tu dois pouvoir les récupérer après, une fois
postés/enregistrés en base s'ils disparaissent, l'astuce serait de les
remplacer par un caractère ascii non visible et donc non utilisé par
l'internaute et ensuite de faire la transformation inverse pour les
récupérer.



effectivement ce n'était QUE le post entre js et php; thru xhr; qui
posait problème, c'est résolu maintenant.
--
« L'univers n'est qu'un défaut dans la pureté du non-être. »
(Paul Valéry)
Avatar
yamo'
Salut,

Une Bévue a tapoté, le 26/08/2011 13:10:
effectivement ce n'était QUE le post entre js et php; thru xhr; qui
posait problème, c'est résolu maintenant.




Comme tu avait fait un crosspost avec suivi non indiqué, j'avais cru que
tu n'avais pas eu de réponse...

--
Stéphane

<http://pasdenom.info/fortune/>

Louer les princes des vertus qu'ils n'ont pas,
c'est leur dire impunément des injures.
-+- François de La Rochefoucauld (1613-1680), Maximes 320 -+-
Avatar
yamo'
Salut,

Une Bévue a tapoté, le 26/08/2011 13:10:
effectivement ce n'était QUE le post entre js et php; thru xhr; qui
posait problème, c'est résolu maintenant.




Comme tu avait fait un crosspost avec suivi non indiqué, j'avais cru que
tu n'avais pas eu de réponse...

--
Stéphane

<http://pasdenom.info/fortune/>

Louer les princes des vertus qu'ils n'ont pas,
c'est leur dire impunément des injures.
-+- François de La Rochefoucauld (1613-1680), Maximes 320 -+-
1 2 3