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

jQuery Discussion :

$.Ajax et URL externe ne fonctionnent pas [AJAX]


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Par défaut $.Ajax et URL externe ne fonctionnent pas
    Bonjour,

    J'essaye pour la première fois d'appelée (en Ajax via Jquery) une procédure PHP d'un domaine externe. Voir code ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    var ajurl="http://www.domexterne.com/pgm/pgm.php";
    var ajparam="";
    // ** renseigne parametre
    ajparam+="modeappel=ajax";
    // * gere ID de session pour AJAX
    ajparam+="&<? print (session_name( )); ?>=<? print (session_id( )); ?>";
    // On défini ce qu'on va faire quand on aura la réponse => on apelle Ajax
    $.ajax({
    	type: "POST",
    	url: ajurl,
    	data: ajparam,
    	success: function(returnedValues){
    		// ** interprète (comme du JS) valeur retournée
    		eval(returnedValues);
    		// affiche message de succes ou d'erreur
    		if (varmajOK==1) {
    			// OK
    			$("#message").css('color','green');
    			$("#message").text('Exécution BATCH récupération Commande REUSSI');
    			$("#message").show();
    		}
    		else {
    			// pas OK
    			$("#message").css('color','red');
    			$("#message").text('Exécution BATCH récupération Commande EN ECHEC');
    			$("#message").show();
    		}
    	},
    	error: function(request,settings){
    		alert("ERREUR : prévénir développeur ADMIN");
    	}
    });
    mais c'est systématiquement la méthode ERROR qui est exécutée.
    Pourtant le programme PGM.PHP s'est exécuté correctement et retourne bien la chaine de caratère AVez vous une idée ?

    Davance merci

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    C'est une limitation de sécurité liée à la Same Origin Policy.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre très actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Par défaut
    merci

    ya t-il un moyen de contourner cette sécurité ?

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    La solution "classique" est d'appeler un script sur le même domaine (en PHP par exemple) qui lui se chargera d'aller récupérer les informations du site distant et de renvoyer ce résultat.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre très actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Par défaut
    je ne vosi pas trop comment faire, le 2ème PHP devra lui aussi aller chercher l'information sur un lien externe et donc la SOP va m'en empécher non ?

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    La SOP s'applique à JavaScript au niveau du navigateur... Ca n'empêche donc en rien PHP d'appeler une URL externe.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre très actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Par défaut
    ah oui OK je n'avais pas saisi

    mais j'avous ne pas savoir depuis un PHP comment récupérer le résultat d'une page d'URL externe

    tu peux m'orienter s'il te plait ?

  8. #8
    Membre très actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    275
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 275
    Par défaut
    je viens de trouver

    je ne pensais pas pouvoir faire un INCLUDE d'un lien externe

    merci

  9. #9
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Même si le include n'avait pas été possible (car il faut reconnaître que c'est surprenant -_-°,)
    le fopen() serait possible, lui.

    Il y a pas de raison qu'on puisse pas le faire, ça consiste à demander une page à site web.
    Les navigateurs le font tout le temps, ils interdisent juste à un site de demander les infos d'un autre site par JavaScript, pour protéger leur utilisateur.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. [1.x] [Linux] Url rewriting ne fonctionne pas
    Par Bleys dans le forum Symfony
    Réponses: 7
    Dernier message: 06/06/2009, 18h54
  2. Jquery/AJAX function click qui ne fonctionne pas.
    Par prome dans le forum jQuery
    Réponses: 2
    Dernier message: 12/03/2009, 12h57
  3. URL Rewriting : ne fonctionne pas
    Par Guigui13 dans le forum Apache
    Réponses: 2
    Dernier message: 28/11/2008, 21h57
  4. [URL Rewriting] ne fonctionne pas avec [a-z]+
    Par krfa1 dans le forum Apache
    Réponses: 1
    Dernier message: 14/05/2008, 12h41
  5. Règle URL rewriting ne fonctionnant pas.
    Par Romalafrite dans le forum Apache
    Réponses: 2
    Dernier message: 01/10/2006, 09h10

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