Rechercher : dans
Par :

Problème de ponctuation dans une variable js

Dernière réponse le 30 avr 2008 à 15:04:13 ratagaz, le 19 oct 2005 à 18:18:25 
 Signaler ce message aux modérateurs

Bonjour à tous !

Mon problème est le suivant : je récupère des données d'une base mysql en php que j'envoi à une fonction javascript qui ouvre une fenêtre dans laquelle doit s'afficher une image et une légende ( merci wiwmagique ! ). Pour le nom de l'image pas de problème . Par contre lorsqu'il y a de la ponctuation dans la variable contenant la léende comme une apostrophe cela crée une erreur du style : missing ) after argument list . Je ne connais pas beaucoup de javascript et j'ai besoin que le texte reste tel qu'il est dans la base de données . Je voudrai savoir si il existe une astuce pour conserver le texte tel quel sans avoir à utiliser des fonctions php pour traiter le texte de manière à enlever toute la ponctuation (sinon autant l'enlever directement dans la base ).
Merci d'avance !

Meilleures réponses pour « problème de ponctuation dans une variable js » dans :
Javascript - Concaténation de chaînes de caractères VoirLe terme "concaténer" signifie joindre deux chaînes bout à bout pour n'en former qu'une seule. Dans la plupart des langages tels que PHP, la concaténation se fait avec le caractère ".". En javascript, il suffit d'utiliser le caractère plus (+) ou...
[Shell] Tester une variable numérique VoirTester une variable numérique    Préambule Dans un environnement "shell", les variables sont, par défaut, de type "chaîne de caractères". De ce fait il n'est pas possible de déclarer une variable de type "entier" (enfin, ceci n'est pas tout à...
Javascript - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. En Javascript, les noms de variables peuvent être aussi long que l'on désire,...
Java: les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage Java sont typées, c'est-à-dire que les données contenues dans...
Javascript - Implantation du code VoirA quel emplacement insérer le Javascript dans votre page HTML Il existe plusieurs façons d'inclure du JavaScript dans une page HTML : Grâce à la balise En mettant le code dans un fichier Grâce aux événements Dans la balise...

1

kilian, le 19 oct 2005 à 19:05:35

Pas besoin d'enlever la ponctuation.
Au moment ou tu soumets ta chaine pour construire ton javascript, utilise str_replace() pour echapper les guillemets (sion elles seront inteprétées en javascript.

Exemple, en javascript tu as:

a='je cherche une chaine avec l'apostrophe';

Là tu as une erreur puisqu'il y a une guillemet au milieu.

Eh bien au moment de l'insertion tu peux faire comme ceci:
echo "a='" . str_replace("'","\'",$a) . "';"

Répondre à kilian

3

 nidhou, le 30 avr 2008 à 15:04:13

Moi j'ai le meme probleme mais c'est en html:

Bonjour,

Je suis nouveau sur ce site et en programmation HTML, Javascript. Et j'ai besoin de votre aide si vous le permettez. Merci bcp d'avance.

J'ai une fonction javascript qui me permet d'ecrire un texte. Ce texte est récupéré de la BD.

function ouvrir(texte,code)
{
var haut = 1000; // hauteur de la fenêtre (en pixels)
var larg = 1000; // largeur de la fenêtre (en pixels)
image =new Image(800,800)

var options = "toolbar=no,location=no,directories=no,status=no,"
+ "menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,"
+ "width=" + larg + ",height=" + haut;

var monimage=document.createElement('img');
monimage.src="../images/sigeom/I1107/"+code+".jpg";

maFenetre=window.open("","",options);
maFenetre.document.open();
maFenetre.document.write(texte);
maFenetre.document.close();
}

l'appel de la fonction :

<TD VALIGN="top" WIDTH="800" ALIGN="left">
<A href="javascript:ouvrir('<%INC I1107_DESC_ENTT%>','<%INC I1107_CODE_ENTT%>')"><IMG alt="Obtenir de l'aide sur le produit" src="../images/sigeom/I1000_aidePoint.gif" align=left border=0 width="26" height="20"></A>

</TD>

il m'affiche une erreur.

La solution c'est d'insérer ton bout de code (echo "a='" . str_replace("'","\'",$a) . "';") dans la fonction ouvrir..

Comment puis-je l'insérer

Répondre à nidhou

2

ratagaz, le 19 oct 2005 à 19:33:19

Ca marche bien ! Merci Kilian ! J'avais pensé à utiliser le str_replace mais je ne savais pas par quoi remplacer l'apostrophe . Merci beaucoup !

Répondre à ratagaz