Guest eruption Posté 15 Octobre 2003 Posté 15 Octobre 2003 Bonjour et merci d'avance à ceux qui pourront m'aider. Le message va être un peu long !! désolée!! Voici le problème : j'ai réalisé une page html qui possède des liens sur laquelle j'applique un onclick qui récupère des variable php , dont voici le code php $onclick="onClick=\"popup('menu.php?itemChoisi=popupDde&iddemandeDde=".$iddemande." & natureDde=".$classeJour."& datedebDde=". $datedeb." & datefinDde=". $datefin." & dureeDde=". $duree." & heuredebDde=".$heuredeb." & heurefinDde=".$heurefin." & rempl1Dde=".$rempl1." & rempl2Dde=aucunremplçants & juri=".$_SESSION['juri']."& jourSemaine=".$jourSemaine[$wj]." ')\" "; l'interprétation donne <td class="autoAbsence" onClick="popup('menu.php?itemChoisi=popupDde&iddemandeDde=179 & natureDde=autoAbsence& datedebDde=2003-10-23 & datefinDde=2003-10-24 & dureeDde=2 & heuredebDde=08:00:00 & heurefinDde=17:00:00 & rempl1Dde=Aucun remplaç[ant choisi & rempl2Dde=aucunremplçants & juri=CPH ALENÇON& jourSemaine=j ')" ></td> jusque là pas de problème !! mais quand je clique , je fais apparaître un popup dans laquelle sont repris tous les éléments contenu dans la fonction popup(url). Mon problème se situe dans certains contenu des variables qui possèdent des caractères spéciaux (tel que éèçà traduit ou pas en entités html). Chaque élément de variable est envoyé dans un champ texte. Mais si une variable contient un caractères accentué, l'interprétation est faussée et le champ tratité contient alors le contenu de sa variable correspondante plus les autres. Je vois apparître : "Aucun remplaçant choisi & rempl2Dde=aucunremplçants & juri=CPH ALENÇON& jourSemaine=j " alors que je veux juste : Aucun remplaçant choisi Ce qui engendre différents problèmes de traitement par la suite. J'ai essayé différentes solutions, '",'' , \"\", \'\' pour encadrer le contenu des variables mais ça engendre des erreurs javascript. J'aimerais pouvoir isoler le contenu d'une variable par un moyen ou un autre, pour qu'il soit traduit en une seule chaîne de caractères. Merci de pouvoir m'aider, en espérant que mes explications ont été suffisamment clairs.
Dan Posté 15 Octobre 2003 Posté 15 Octobre 2003 Eruption, Bonjour et bienvenue sur le Hub ! Je me demande à lecture de ton code, si les espaces de part et d'autre des "&" sont délibérés ou bien s'il s'agit simplement d'un problème d'affichage sur le Hub... Si tu les as dans ta source, il faut les supprimer... Dan
Anonymus Posté 15 Octobre 2003 Posté 15 Octobre 2003 Le onClick="popup n'est pas une fonction 'standard' de javascript. Peux tu publier son code ? Merci.
smile Posté 15 Octobre 2003 Posté 15 Octobre 2003 Dan a raison : enlever les espaces mais c'est peut etre copier,coller qui t'as fait espacer tes variables. echo'<a href="javascript:void(5)" onClick="window.open(\'menu.php?rempl1Dde='.$rempl1.'&rempl2Dde=aucunremplçants\',\'pop\',\'left=0,top=0,resizable=no,width=492,height=500\');">clique</a>'; en tous les cas, je pratique comme ca pour le javascript dans du php.
Dinostrate Posté 16 Octobre 2003 Posté 16 Octobre 2003 J'ai essayé différentes solutions, '",'' , \"\", \'\' pour encadrer le contenu des variables mais ça engendre des erreurs javascript. Bonjour eruption Je suis très loin d'être un as de javascript, mais je ne comprends pas ta manière d'encadrer le contenu des variables comme tu dis..... J'utilise un script très différent du tien dans ma page d'accueil, et pour les apostrophes et autres caractères accentués, je n'encadre pas, mais dans l'affectation à la variable, je place le \ avant les apostrophes ou caractères accentués, et c'est tout... En plus des problèmes soulevés par Dan, tu peux peut être vérifier ce point. A+ Dino
Guest eruption Posté 20 Octobre 2003 Posté 20 Octobre 2003 Bonjour et Merci à tous d'avoir bien voulu me répondre !! Dan et smile &Dinostrate : Les espaces étaient volontaires mais n'intèférer en rien dans l'interprétation du code. Mais depuis l'envoie du message sur le forum, j'ai modifié mon code et enlevé les espaces mais le problème des caractères reste tout entier. Il me faudarit peut-être une fonction qui balaye le contenu de mes variables et qui place un \ devant les caractères spéciaux mais je ne visualise pas la manière de faire car je ne connais pas leur emplacement à l'avance. anonymous : function popup(page){if (document.all) var xMax = screen.width, yMax = screen.height;else if (document.layers) var xMax = window.outerWidth, yMax = window.outerHeight; else var xMax = 640, yMax=480;var xOffset = (xMax - 200)/2, yOffset = (yMax - 200)/2;window.open(''+page+'','windowter','width=600,height=400,screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset+' ');}
Guest eruption Posté 20 Octobre 2003 Posté 20 Octobre 2003 Bonjour Gilbert Merci pour l'idée, je vais la tenter mais est-ce que ça fonctionnera pour les "éèà" ?
Guest eruption Posté 20 Octobre 2003 Posté 20 Octobre 2003 si je les transforme en caratères non accentuées cad ISO ou entitées html j'obtiens un & (} ou eacute) qui devient un sacré grain sable dans les rouages de l'interpréation de mon code!! Mais je teste la solution du \ !!
Guest eruption Posté 20 Octobre 2003 Posté 20 Octobre 2003 Bien, j'ai essayé les \ et la modification des caractères accentués!! Rien ne fonctionne Je n'arrive pas échapper ces caractères lors de l'interprétation. Voici le résultat de mon code appelant le popup : <td class="conges" onClick="popup('menu.php?itemChoisi=popupDde&iddemandeDde=164&natureDde=conges&datedebDde=2003-10-15&datefinDde=2003-10-17&dureeDde=4&heuredebDde=08:00:00&heurefinDde=17:00:00&rempl1Dde=Aucun rempla\çant choisi&rempl2Dde=Aucun rempla\çant choisi&juri=CPH ALENÇON&jourSemaine=me ')" ></td> L'interpréation est toujours faussé dans mon champ texte j'obtiens toujours dans ma popup : <option value="Aucun remplaçant choisi&rempl2Dde=Aucun remplaçant choisi&juri=CPH ALENÇON&jourSemaine=j ">--Aucun remplaçant choisi&rempl2Dde=Aucun remplaçant choisi&juri=CPH ALENÇON&jourSemaine=j -- </option> Alors que pour les champs précédent le contenu des variables n'ont pas de caratères spéciaux et tous fonctionne (évidemment !!) je ne sais pas très bien où m'orientée. D'avance merci encore à ceux qui pourront m'aiguiller
Dinostrate Posté 20 Octobre 2003 Posté 20 Octobre 2003 j'ai essayé les \ et la modification des caractères accentués!!Rien ne fonctionne Bonjour Est-ce que tu as essayé ça, par exemple ? \ + modification ...... &rempl1Dde=Aucun rempla\Çant choisi&rempl2Dde=Aucun rempla\Çant choisi ...... Dino
Guest eruption Posté 21 Octobre 2003 Posté 21 Octobre 2003 Bonjour Dinostrate oui j'ai essayé mais ça ne change rien, le problème reste entier !! je cherche toujours.
Guest eruption Posté 23 Octobre 2003 Posté 23 Octobre 2003 Bonjour à tous ceux qui m'ont aidé !! j'ai finalement trouvé une solution qui est le codage des caractères accentués en caractères Ascii. Je ne connaissais que le codage ISO ou HTML et je me suis bornée à ça. Mais maintenant tout marche Je ne sais toujours pas pourquoi j'ai besoin de ce codage mais le résultat est là. J'ai crée une fonction qui transforme tout les caractères spéciaux français en code asciii (je n'ai pas trouvé de fonction php qui le fasse). J'ai peut-être réinventé pour la enième fois le roue mais au moins mon problème est résolu !! Merci encore à tous et @+
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant