Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Comment lancer un script PHP qui ne décharge pas la page courante ? [ Divers / Débutant(e) ] (bluemandfr)

samedi 24 mai 2008 à 21:50:25 | Comment lancer un script PHP qui ne décharge pas la page courante ?

bluemandfr

Bonjour,
 
Je fais appel à la communauté pour savoir si, depuis une page HTML classique, nommée pour cette explication "A", il est possible de lancer un script PHP (qui en loccurence met à jour des données sur un serveur, mais qui n'affiche absolument rien, ne retourne vers le client absolument rien) SANS que la page courante "A" soit déchargée.
 
J'y arrive lorque je force un download, arrivant même à lancer du java derrière, mais hormis ce cas très special, je n'arrive pas à le faire dans le contexte indiqué ci-dessus.
 
Est-ce possible et comment ?
 
Par avance Merci !
 
BlueManCa.

dimanche 25 mai 2008 à 09:29:37 | Re : Comment lancer un script PHP qui ne décharge pas la page courante ?

nicomilville

Membre Club
Réponse acceptée !
Salut,

Regarde du côté d'AJAX !
XMLHTTPRequest

a++

Si la réponse vous convient, pensez : Réponse accepté !


dimanche 25 mai 2008 à 18:36:22 | Re : Comment lancer un script PHP qui ne décharge pas la page courante ?

bluemandfr

Réponse acceptée !
Merci nicomilville !

Voici à ce propose des bouts de codes que j'ai trouvé et qui aideront tous ceux qui, comme moi, ont besoin de pouvoir lancer des scripts (avec ou sans données en retour) SANS DÉCHARGER la PAGE COURANTE : TRÈS PRATIQUE !!!! :

Partie Javascript (dans cet exemple on envoie deux données : 2 chaines stockées dans 2 INPUT de type TEXTE)  :
--------------------------------------------------------------------------------------------------------------------

var xhr_object = null;
 
if(window.XMLHttpRequest) // Firefox
   xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
   xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
   return;
}
 
var method   = f.elements["method"][0].checked ? "GET" : "POST";
var filename = "strings2.php";
var s1       = f.elements["string1"].value;
var s2       = f.elements["string2"].value;
var data     = null;
 
if(s1 != "" && s2 != "")
   data = "s1="+s1+"&s2="+s2;
 
if(method == "GET" && data != null) {
   filename += "?"+data;
   data      = null;
}
 
xhr_object.open(method, filename, true);
 
xhr_object.onreadystatechange = function() {
   if(xhr_object.readyState == 4) {
      var tmp = xhr_object.responseText.split(":");
      if(typeof(tmp[1]) != "undefined") {
         f.elements["string1_r"].value = tmp[1];
         f.elements["string2_r"].value = tmp[2];
      }
      alert(tmp[0]);
   }
}
 
if(method == "POST")
   xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
 
xhr_object.send(data);

Partie PHP (dans cet exemple cela renvoie les 2 chaines mais inversées)  :
--------------------------------------------------------------------------------------------------------------------

header('Content-type: text/html; charset=iso-8859-1');
 
if(count($_POST) > 0) {
   echo "Données reçues en POST:";
   foreach($_POST as $v)
      echo strrev(utf8_decode($v)).":";
}
elseif(count($_GET) > 0) {
   echo "Données reçues en GET:";
   foreach($_GET as $v)
      echo strrev($v).":";
}
 
if(count($_POST) == 0 && count($_GET) == 0)
 echo 'Aucune donnée n\'a été reçue par "'.basename($_SERVER["PHP_SELF"]).'"...';


Conclusion :
------------

Vous pourrez simplifier encore ce code en virant toute la partie GET : il faut mieux utiliser POST, c'est plus propre.

On peut lancer des traitements avec ou sans retour, sans décharger la page courante avec XMLHttpRequest.

Voili, voulou !

 BlueMan

dimanche 25 mai 2008 à 18:40:23 | Re : Comment lancer un script PHP qui ne décharge pas la page courante ?

nicomilville

Membre Club
Réponse acceptée !
De rien, j'avais un peu peur que tu fuis comme plein d'autre gens quand je dis ajax il s'enfuient !

a++

Si la réponse vous convient, pensez : Réponse accepté !




Cette discussion est classé dans : script, page, php, lancer, courante


Répondre à ce message

Sujets en rapport avec ce message

Pb avec java script + frame [ par mika20 ] Salut.j'ai un pb. je n'arrive pas a faire afficher une page php dans une frame lorsque je clic sur un clien en java scripte. Je m'explique plus claire PHP côté serveur [ par str ] Salut tout le monde,Je souhaite lancer un script qui doit durer environ 1/2 heure, ce qui n'est pas très pratique via un navigateur.J'ai vu qu'il étai cron php [ par str ] Salut,Je suis a la recherche d'une commande pour executer un script php uniquement sur le serveur à partir d'une page php executée par un navigateur c colle [ par conan76 ] Une petite colle,Je voudrais tester dans le but d'optimisations plusieurs choses :1) temps de traitement du script PHP2) poids de la page récupérerain Lancer un script php à partir de mon fichier index.html [ par vbbreizh ] VBBreizh (petits débuts en php)A partir de mon fichier index.htmlstructure :-Dans une fonction située dans le , j'utilise JavaScript pou Apache/Script [ par glipper ] Bonjour,j'ai monté un serveur Apache (v1.3), et j'heberge un ami provisoirement. Mais j'aimerais que lorsque l'on tape l'adresse de son site ("http:// Cherche Script PHP [ par ykc ] Bonjour,Je cherche 1 script php qui me permettrait par methode d'"include()" de n'avoir que la page index.php et les autres s'afficheraien dedans avec Lancer un php en arriere plan [ par DevelMan ] Bonjour,Je voudrais lancer l'execution d'un php en arriere plan que mon programme principal continue a se derouler pendant ce temps.J'ai essaye ce bou Upload/Download [ par rrnrios ] salut a tous!!Je voudrais savoir s'il existe un script pour télécharger ma page : news.php depuis un ordinateur distant, la modifier et la remettre en PHP FORMULAIRE [ par ousta ] bonjour a vous. Je viens malheureusement de découvrir le PHP et je deteste. j'ai un probleme qui m'enerve au plus haut point:Notice: Undefined index:


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,328 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.