IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[AJAX] encodage d'url qui disparait avec Javascript


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 15
    Par défaut [AJAX] encodage d'url qui disparait avec Javascript
    Bonjour,

    tout d'abord, je dois prévenir que je ne ne suis pas sûr du tout de poster sur le bon forum, donc merci aux modérateurs de déplacer ce post s'il est au mauvais endroit.

    Voici mon problème :
    Je dois passer à Javascript une chaine de caractère comportant le caractère '\' une ou plusieur fois, pour ensuite repasser cette chaine à PHP via la méthode GET.

    En clair, mon code (épuré) ressemble à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <script language="javascript" type="text/javascript">
    	function confirmDelete(target)
    	{
    		if (confirm("Etes-vous sûr de vouloir supprimer "+target+" ?"))
    			document.location = "deleteEntry.php?target="+target;
    	}
    </script>
     
    <?php
            $target = 'myFolder\mySubFolder';
    ?>
     
    <a href="javascript: confirmDelete('<?php echo urlencode($target); ?>')">supprimer</a>
    Quand je regarde la source de la page HTML générée, je vois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="javascript: confirmDelete('myFolder%5CmySubFolder')">supprimer</a>
    donc tout se passe bien jusque là.

    Mais lorsque je clique sur le lien, la fenêtre de confirmation affiche
    Etes-vous sûr de vouloir supprimer myFoldermySubFolder
    et si je confirme la page sur laquelle je suis redirigé est
    deleteEntry.php?target=myFoldermySubFolder
    Il semble donc que le passage par Javascript supprime d'une manière ou d'une autre le "%5C". J'en ai pourtant besoin dans le script contenu dans deleteEntry.php

    Comment dois-je m'y prendre ?

    Pour information, je teste ce code avec Firefox 2.0.0.6

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 15
    Par défaut
    Bon, je pense avoir trouvé la réponse à mon problème.

    Il semblerai que même sous la forme "%5C", javascript reconnait un '\' et le considère donc comme un caractère d'échappement.

    si je met "%5C%5C", il m'affiche bien le '\' (comme si j'avais mis "\\").

    Ça me parait très bizarre, mais bon, du moment que ça marche comme ça...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Scroll bar qui disparait avec utilisation propriété Anchor
    Par Gualino dans le forum Windows Forms
    Réponses: 2
    Dernier message: 14/10/2011, 14h48
  2. Bug Mozilla body margin-top 0px qui disparait avec border-top
    Par Flaburgan dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 03/06/2011, 13h43
  3. Réponses: 1
    Dernier message: 27/11/2010, 15h43
  4. [AJAX] Récupération d'un fichier JSON avec javaScript
    Par guerin dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 26/11/2006, 19h05
  5. [IE] error qui disparait avec un alert
    Par Mr N. dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 23/02/2006, 12h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo