Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 Bonjour le Hub, J'ai quelques questions concernant la technologie Ajax... Pour simplifier les choses, je vais appeler 'inscription.php' le site dans lequel on a écrit le javascript qui appelle 'ajax.php'... Question 1: Est il necessaire de faire un session_start(); au début de 'ajax.php'? Question 2: Faut-il rappeler le DOCTYPE dans 'ajax.php'? Question 3: Comment protéger 'ajax.php'? En clair, j'aimerais que l'on ne puisse faire appel à ce fichier que si l'internaute est sur 'http://www.MonSite.ext/inscription.php' ... Ca m'embéterait un peu qu'un autre site vienne 'pomper' les résultats de 'ajax.php'... Ce qui est possible car tout ce qui est nécessaire est fourni dans le javascript écrit dans 'inscription.php'! Par avance, merci!
rportal Posté 5 Septembre 2006 Posté 5 Septembre 2006 Ok, je présume que tu utilises des scripts déjà fait. Si oui, peux tu nous dire desquels il s'agit parce qu'avec un nom de fichier il est difficile de deviner ce qu'il y a derriere...
Bourinho Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 Salut, je présume que tu utilises des scripts déjà fait Tu présumes mal... Et je ne sais pas si plus de précisions t'aideront étant donné qu'il s'agit de questions d'ordre général... Mais bon, voici comment j'appelle ce fichier: function ListeVille() { getXhr(); // On défini ce qu'on va faire quand on aura la réponse xhr.onreadystatechange = function() { // On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readyState == 4 && xhr.status == 200) { // On se sert de innerHTML pour rajouter les options a la liste document.getElementById('PropositionVille').innerHTML = xhr.responseText; } } // Ici on va voir comment faire du post xhr.open("POST","hidden/ajax/ListeVille.php",true); // ne pas oublier ça pour le post xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); // ne pas oublier de poster les arguments sel = document.getElementById('Departement'); Departement = escape(sel.options[sel.selectedIndex].value); sel2 = document.getElementById('VilleOUCodePostal'); VilleOUCodePostal=escape(sel2.value); xhr.send("Departement="+Departement+"&VilleOUCodePostal="+VilleOUCodePostal); } Merci de t'intéresser à mon problème
rportal Posté 5 Septembre 2006 Posté 5 Septembre 2006 (modifié) Ok. Voici des débuts de réponses: - Question 1&3: Si tu veux valider que l'utilisateur est bien passé par un endroit de ton script, il va falloir utiliser les sessions php. Ex: dans chacune de tes pages (inscription.php), tu mets à jour une valeur de la session pour savoir quelle est la derniere page principale visitee. Ensuite dans ton script php qui communique avec ta partie Ajax, tu verifies que la page principale en cours est bien celle qu'il faut. - Question 2: pas vraiment. la reponse de ton script ajax.php sera lu comme une chaine de caractere que tu vas devoir analyser par la suite. Si tu veux un format d'échange normaliser pour l'Ajax, recherche des infos sur JSON ( http://www.json.org/ ). Modifié 5 Septembre 2006 par rportal
Bourinho Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 Merci pour ces réponses... Je n'avais pas pensé aux sessions alors qu'elles se révèlent assez souvent utiles...quand on y pense Du coup, il faut bien mettre un session_start() au début de ce fichier si on souhaite ne pas perdre lal session en cours... Merci encore!
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant