Partage
  • Partager sur Facebook
  • Partager sur Twitter

Envoie de données GET et POST via Ajax

Sujet résolu
    4 octobre 2009 à 17:46:50

    Bonjour à tous.

    Pour un site, j'ai récupéré une fonction que j'avais trouvé sur un site pour travailler en ajax :

    function file(fichier)
    {
        if(window.XMLHttpRequest) // FIREFOX
            xhr_object = new XMLHttpRequest();
        else if(window.ActiveXObject) // IE
            xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
        else
            return(false);
        xhr_object.open("GET", fichier, false);
        xhr_object.send(null);
        if(xhr_object.readyState == 4) return(xhr_object.responseText);
        else return(false);
    }
    


    Les données sont envoyées en GET, et maintenant que mon site est gros, j'ai beaucoup de fichiers php appelés par cette fonction, mais je me rend compte maintenant que j'aurais du plutôt envoyer mes variables en POST par mesure de sécurité, parce que n'importe qui en regardant la source de mon code peut connaître le nom de la page php à appeler ainsi que les paramètres qu'elle prend en compte.

    Seulement, j'ai beaucoup de page maintenant, et toutes le smodifier je vais avoir du mal je pense, alors je voulais savoir si je pouvais envoyer mes données à la fois par GET et POST, c'est à dire de mettre :
    xhr_object.open("POST", fichier, false);
    
    , mais de fournir toujours une adresse du type : mapage.php?mesVariablesGet=.... tout en modifiant :
    xhr_object.send(null);
    

    Par :
    var data = 'test=1';
    xhr_object.send(data);
    


    La variable POST ne servant à assurer que la provenance de l'appel.
    Dans ce cas là, mes variables GET seront toujours réceptionnées ?

    Si ce n'est pas le cas, y a-t-il une autre façon uniquement en GET pour sécuriser le tout ?
    J'ai eu le malheur de développer le tout avec peu de connaissances en Ajax, et maintenant je me rend compte de ma stupidité :euh:

    Si quelqu'un a une idée, je suis preneur, sinon je suis bon pour tout transformer en POST (snif...)

    Bonne fin de journée et bonne fin de week-end :)
    • Partager sur Facebook
    • Partager sur Twitter
      4 octobre 2009 à 18:51:20

      D'accord pour les commentaires // FIREFOX et // IE qui n'ont rien à faire là ;)

      Concernant le tuto, je n'aurais pas posté s'il répondait à mes questions >_< (le second tuto n'y répond pas non plus d'ailleurs ... avis à tout ceux qui étaient prêt à me mettre le second lien...)

      Dans les tutos, ils expliquent qu'on peut envoyer par GET ou POST, mais pas s'il était possible d'envoyer par POST à une adresse de type mapage.php?mesvariables=.... (donc récupération des POST ET des GET).

      Ensuite, dans le tuto que tu m'as envoyé, ça précise bien qu'il faut sécuriser les champs, dans mon cas, les champs sont bien sécurisés, mais je tiens quand même à empêcher le plaisantin qui va rentrer n'importe sans passer par l'ajax
      • Partager sur Facebook
      • Partager sur Twitter
        4 octobre 2009 à 19:20:18

        Bah tu mets en post et tu rajoute les GET dans l'url.
        Et ça marche...
        • Partager sur Facebook
        • Partager sur Twitter
          4 octobre 2009 à 19:33:52

          Je te remercie :)
          Je n'étais pas sur (ça parait logique, mais bon...) que ça allait marcher :euh: et comme actuellement (je développe en ligne) j'ai une connexion très mauvaise (connexion partagée en résidence étudiante = une minute pour ouvrir ne serait-ce que le client FTP et se connecter), je voulais éviter de modifier et devoir changer si ça ne marchait pas....

          Merci ;)
          Bonne soirée
          • Partager sur Facebook
          • Partager sur Twitter
            4 octobre 2009 à 19:35:21

            Tu pouvais tester en local... o_O
            De rien :D
            • Partager sur Facebook
            • Partager sur Twitter

            Envoie de données GET et POST via Ajax

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown