Accueil > Forum > > > > Pb de guillemets en cascade...
Pb de guillemets en cascade...
dimanche 17 juillet 2005 à 20:43:39 |
Pb de guillemets en cascade...

cyberappz
|
Bonjour, j'ai un problème qui me fait tourner en rond depuis plusieurs jours. J'ai un fichier qui écrit des instructions "str_replace" dans un autre fichier grâce à "fwrite"... Mon problème se situe au niveau des guillemets qui se trouvent dans des guillemets qui se trouvent dans des apostrophes etc. Et le problème se situe plus précisément au niveau de ce que l'utilisateur entre comme valeur parce que si les variables ne contenaient aucun caractère spécial comme les guillemets ou autres, il n'y aurait aucun problème... J'ai testé en mettant leur code html à la place mais en vain. Le gros problème se situe dans les apostrophes de la fonction javascript popup, il interprète le code comme la fin de sa variable. En clair: popup('blablabla'blabla'); il croit que c'est 'blablabla' la valeur fournie à la fonction... Fichier qui écrit les requêtes "str_replace" (il écrit dans un fichier qui est include en fait): .... (déclaration de la variable fp, etc. aucun prob jusque là) ... puis ... fwrite($fp, "<? \$var = str_replace(\"$var1\", \"<a href=\\\"$var2\\\" onclick=\\\"popup('nom de fichier contenant des apostrophes');\\\">$var1</a>\", \$var); ?>\n");PS: Non, ce n'est pas une erreur (au cas où), j'ai bien voulu ne pas interpréter la variable "var" contrairement aux autres. Le but étant d'écrire un code dans un fichier qui sera inclut dans un autre (grâce à include). Fichier de résultat: <? $var = str_replace("nom de fichier avec des ' ... (se trouvant dans var1 donc)", "<a href=\"lien cliquable contenant aussi des apostrophes\" onclick=\"popup('nom de fichier avec des apostrophes aussi');\">var1</a>", $var); ?> Donc, il me faut obtenir comme résultat le contenu du fichier de résultat ci-dessus mais avec la gestion des ' ou encore des " (le problème se pose tant au niveau des guillemets que des apostrophes) dans les variables envoyées par l'utilisateur depuis mon formulaire... Svp, aidez-moi, j'éspère que quelqu'un sera éclairer ma lanterne car j'ai pas arrêté de chercher non-stop....en vain... Comment faire si même les codes html ne marche pas  Je dois sûrement m'y prendre mal... Un TRES TRES grand merci à celui qui sera m'aider... :D -=[ Nicolas - http://redhatpower.free.fr ]=- 8)
|
|
dimanche 17 juillet 2005 à 21:00:43 |
Re : Pb de guillemets en cascade...

Anthomicro
|
Salut, essaie ça : fwrite($fp,'<?php $var = str_replace("'.$var1.'","<a href="'.$var2.'" onclick="popup(\'nom de fichier contenant des apostrophes\');">'.$var1.'</a>",'.$var.'); ?>'."\n");
|
|
dimanche 17 juillet 2005 à 21:18:32 |
Re : Pb de guillemets en cascade...

cyberappz
|
Oua! Ca c'est de la réponse rapide ! Un grand merci de m'avoir répondu tout d'abord. Malheureusement, "parse error, unexpected T_CONSTANT_ENCAPSED_STRING" à cette ligne mais j'ai juste modifié un truc qui a peut-être fait malgré que je ne pense pas (c'est ce qui est en dessous mais avec ta version)... En reprenant ma version, je te montre juste la différence qu'il me faudrait en plus. Avant: fwrite($fp, "<? $var = str_replace("$var1\", \"<a href=\\\"$var2\\\" onclick=\\\"popup('nom de fichier contenant des apostrophes');\\\">$var1</a>\", \$var); ?>\n"); Après: $param = onclick=\\\"popup('nom de fichier contenant des apostrophes');\\\" (je ne mets pas de guillemets supplémentaires ni ; lol c déjà assez complexe comme ca c pour toi voir le principe que j'aimerais). fwrite($fp, "<? $var = str_replace("$var1\", \"<a href=\\\"$var2\\\" $param>$var1</a>\", \$var); ?>\n"); Car cette variable (param) n'affiche le paramètre OnClick que sous certaines conditions (ca ya no soucis). J'éspère que trouveras. En attente de ta réponse, je vais vite manger et je reviens.  :D -=[ Nicolas - http://redhatpower.free.fr ]=- 8)
|
|
dimanche 17 juillet 2005 à 21:21:38 |
Re : Pb de guillemets en cascade...

Anthomicro
|
Heu... tu voudrais pas poster un exemple de ce que ça doit donner sans le code php, en html, et ensuite mettre les variables qui seront modifiées, etc... (le code php quoi)
|
|
dimanche 17 juillet 2005 à 21:35:06 |
Re : Pb de guillemets en cascade...

cyberappz
|
Ben le reste ca a pour la plupart rien à voir, c'est vraiment juste un problème dans la syntaxe avec les guillemets c'est le seul truc quoi... Le reste c'est juste quelques champs, un bouton submit, et à chaque fois qu'il recoit les valeurs var1 etc. ben il l'écrit dans le fichier... Le but c'est d'écrire du code php dans un fichier (donc faut l'écrire sans qu'il soit interprété) et transformer une phrase du genre "il fait beau" en lien cliquable (adresse du lien fourni par le formulaire) + le paramètre onclick qui, au lieu, d'être mis dans la balise, est remplacé par une variable (param) et suffit de déclarer $param="onclick=blabla"; dans un cas, sinon variable vide (ce qui donne juste un a href sans onclick). C'est assez simple en fait, d'ailleurs j'ai tout bon sauf dans la syntaxe, ce qui fait que les variables ne peuvent PAS contenir de guillemets ou apostrophes. Voilà, @++ et merci encore.  :D -=[ Nicolas - http://redhatpower.free.fr ]=- 8)
|
|
dimanche 17 juillet 2005 à 21:36:00 |
Re : Pb de guillemets en cascade...

cyberappz
|
Je vais manger et j'arrive juste après.  + :D -=[ Nicolas - http://redhatpower.free.fr ]=- 8)
|
|
dimanche 17 juillet 2005 à 21:44:42 |
Re : Pb de guillemets en cascade...

malalam
|
Hello, moi ce que je fais quand je mélange plusieurs fonctions prenant une chaine, voire avec du javascript, c'est que je crée d'abord la chaine, normale, en php, puis je la transfère a mes fonctions. ca marche bien et ca évite de se prendre la tete avec les échappements.
|
|
dimanche 17 juillet 2005 à 22:08:14 |
Re : Pb de guillemets en cascade...

cyberappz
|
Comment ca? Donc au lieu d'appeller tes variables tu appelles ta fonction ($variable); ? Comment ferais-tu pour ceci qui est quand même assez complexe? if(condition) { $param = onclick=\\\"popup('nom de fichier contenant des apostrophes');\\\" (je ne remets pas de guillemets pour ne pas embrouiller plus la chose) } fwrite($fp, "<? $var = str_replace("$var1\", \"<a href=\\\"$var2\\\" $param>$var1</a>\", \$var); ?>\n"); Comme ca, si la condition n'est pas remplie, la partie onclick n'est pas affichée.   Je cherche à faire ca comme ca mais en version correct sans 1000 backslashes et avec des variables POUVANT contenir des ' ou des ". Merci. :D -=[ Nicolas - http://redhatpower.free.fr ]=- 8)
|
|
dimanche 17 juillet 2005 à 22:20:42 |
Re : Pb de guillemets en cascade...

Anthomicro
|
il manque des guillements sur le pourtour de ta variable
|
|
dimanche 17 juillet 2005 à 22:31:33 |
Re : Pb de guillemets en cascade...

cyberappz
|
Je sais g bien précisé : (je ne remets pas de guillemets pour ne pas embrouiller plus la chose) Dans mon code, je les ai mis mais ici j'ai voulu faire comprendre ce que je voulais faire sans justement embrouiller le truc vu que le prob c'est les fameux " et '. Tu n'as pas une idée alors? ton : fwrite($fp,'<?php $var = str_replace("'.$var1.'","<a href="'.$var2.'" onclick="popup(\'nom de fichier contenant des apostrophes\');">'.$var1.'</a>",'.$var.'); ?>'."\n");
semblait déjà beaucoup mieux... Une autre idée? Ca doit bien être faisable quand même lol. Je galère depuis des jours et c'est pas la joie quoi pfff. Au passage, les autres n'hésitez pas à donner vos idées au passage...  :D -=[ Nicolas - http://redhatpower.free.fr ]=- 8)
|
|
Cette discussion est classée dans : fichier, problème, guillemets, var, apostrophes
Répondre à ce message
Sujets en rapport avec ce message
Problème d'ajout de guillemets dans fichier csv avec la fonction fputcsv [ par TOULOUSELAUTREC69 ]
Bonjour,Je génère un fichier csv sur mon site web qui contient la liste de mes clients du jour.Ensuite j'importe ce fichier dans mon logiciel de factu
Tester un fichier : problème d'autorisations [ par pyrrah ]
Bonjour, Je me retrouve confronter au problème suivant : Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/va
Problème d'affichage d'un fichier texte sur une page web. [ par guimat123 ]
Bonjour. Dans mon code PHP je souhaite afficher un texte enregistré en .txt J'ai découvert la balise qui permet de conserver le formatage du texte.
Problème de header [ par mike1310 ]
Bonjour à tous,je suis en train de me battre avec IE (pour ne pas changer) sur le téléchargement d'un fichier csv.J'explique le truc :J'ai un site qui
problème nom du fichier compressé [ par petercrouch ]
Bonjour,j'arrive à compresser un fichier en utilisant la bibliothèque zip de phpMyAdmin.Le problème c'est pour les fichiers dont le nom porte des acce
Problème au téléchargement d'un fichier (download) [ par beth2611 ]
Bonjour, Je rencontre un problème handicapant, sur un site en php, je liste les fichiers dans une balise select, l'utilisateur selectionne un fichier
Problème import fichier LOAD DATA... [ par Youss22 ]
Bonjour à tous, Je me retourne vers vous concernant un problème d'importation de fichier csv dans une table, après avoir retourné le problème dans le
Encodage fichier XML [ par edyed ]
Bonjour à tous, Je suis sur un projet dans lequelle je dois créer un fichier XML avec DOM à la suite d'information entré par l'utilisateur via une in
fonction file_exists qui ne fonctionne pas [ par sly456328971 ]
Bonjour, dans un fichier php 'fichier1.php' j'ai une variable $var qui contient [code=php]$var= '/var/www/dossier/coco.txt[/code]. A l'aide d'un inc
problème PHP=>JAVASCRIPT=>HTML [ par zuddap ]
Bonjour a tous voila mon problème peut paraitre facile a résoudre pour certain d'entre vous mais moi sa fait 4jours que je suis dessus et je trouve pa
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|