Executer fonction php sans recharger page
yoshiro
Messages postés
496
Date d'inscription
Statut
Membre
Dernière intervention
-
yoshiro Messages postés 496 Date d'inscription Statut Membre Dernière intervention -
yoshiro Messages postés 496 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je sais que le PHP j'exécute au niveau serveur mais je ne sais pas comment appeler ma fonction PHP sans recharger la page.
Lorsque je clique sur un lien j'affiche la page voulue sans le recharger grâce à une fonction JavaScript. mais je le problème c'est que je dois activer une fonction PHP pour prendre en compte les nouvelles paramètre.
Voici la fonction que je veux exécuter
Merci d'avance !!
Je sais que le PHP j'exécute au niveau serveur mais je ne sais pas comment appeler ma fonction PHP sans recharger la page.
Lorsque je clique sur un lien j'affiche la page voulue sans le recharger grâce à une fonction JavaScript. mais je le problème c'est que je dois activer une fonction PHP pour prendre en compte les nouvelles paramètre.
Voici la fonction que je veux exécuter
public function list_dir($base, $cur, $level=0) { global $PHP_SELF, $BASE; $dir = $_GET['dir']; if ($dir = opendir($base)) { while($entry = readdir($dir)) { /* chemin relatif ? la racine */ $file = $base."/".$entry; if(is_dir($file) && !in_array($entry, array(".",".."))) { /* marge gauche */ for($i=1; $i<=(4*$level); $i++) { echo " "; } /* l'entr?e est-elle le dossier courant */ /* listage des dossiers */ $fich=$this->taille_nom($entry); if(preg_match("#$file#", $cur)) { echo"<img src=\"images/dir-open.gif\"/><a href=\"$PHP_SELF?dir=".rawurlencode($file)."\" alt=\"$entry\" class=\"wajax\" onclick=\"ChangeAmount('".$file."');\"><b> $fich</b></a><br/>\n"; } else { echo"<img src=\"images/dir-close.gif\"/> <a href=\"$PHP_SELF?dir=".rawurlencode($file)."\" alt=\"$entry\" class=\"wajax\" onclick=\"ChangeAmount('".$file."');\">$fich</a><br/>\n"; } /* l'entr?e est-elle dans la branche dont le dossier courant est la feuille */ if(preg_match("#$file#", $cur)) { $this->list_dir($file, $cur, $level+1); } } } closedir($dir); } }
Merci d'avance !!
A voir également:
- Executer fonction php sans recharger page
- Fonction si et - Guide
- Supprimer page word - Guide
- Imprimer tableau excel sur une page - Guide
- Page d'accueil - Guide
- Page privée - Guide
3 réponses
il faut que tu utilises l'objet JS XMLHttpRequest :
https://www.commentcamarche.net/contents/5-ajax-asynchronous-javascript-and-xml
http://lassadf.free.fr/supportAJAX.html#dstructure
https://openweb.eu.org/articles/objet_xmlhttprequest/
https://siddh.developpez.com/articles/ajax/
http://www.modernmethod.com/sajax/
Abandonne ce qui te trouble au profit de ce qui apaise ton coeur.
https://www.commentcamarche.net/contents/5-ajax-asynchronous-javascript-and-xml
http://lassadf.free.fr/supportAJAX.html#dstructure
https://openweb.eu.org/articles/objet_xmlhttprequest/
https://siddh.developpez.com/articles/ajax/
http://www.modernmethod.com/sajax/
Abandonne ce qui te trouble au profit de ce qui apaise ton coeur.
oki merci !!
Mais j'ai un autre problème, j'ai trouvé la solution, mais un cours a recharge avec le Javascript et quand je clique sur le deuxième lien ça recharge avec le PHP !!
J'ai pas trouvé pourquoi !!
voici le code
Mais j'ai un autre problème, j'ai trouvé la solution, mais un cours a recharge avec le Javascript et quand je clique sur le deuxième lien ça recharge avec le PHP !!
J'ai pas trouvé pourquoi !!
voici le code
/* Fonction chargement ajax avec animation, * vous pouvez modifier la vitesse (slow, fast, 1500, ...) * et l'effet (slideUp, fadeOut, ...) */ function ajax_page_advanced(ele,msg,url) { $(ele).slideUp("slow", function() { $(ele).html(msg).show("slow", function() { $(ele).load(url+" "+ele, null, function() { var tampon = $(ele).html(); $(ele).html(msg).hide("slow",function() { $(ele).html(tampon); $(ele).slideDown("slow"); }); }); }); }); } /*Fonction de chargement ajax simple */ function ajax_page(ele,msg,url) { $(ele).html(msg).load(url+" "+ele); } /* Fonction de chargement ajax simple */ function ajax_page_delayed(ele,msg,url) { $(ele).html(msg); setTimeout(function(){ $(ele).load(url+" "+ele); }, 1500) alert(url); } /* Une fois la page chargée dossiers */ $(document).ready(function() { //Application du chargement ajax avec animation sur les liens ayant une classe "wajax" $("a.wajax").click(function() { ajax_page_advanced('#swithcontenuse','<center><img src="images/loader.gif" ></center>',this.href); return false; alert(url); }); }); function GetHRObject() { var HttpReq; if(window.XMLHttpRequest) // Firefox { HttpReq=new XMLHttpRequest(); } else { try { HttpReq=new ActiveXObject('Microsoft.XMLHTTP'); // I.E } catch(e) { alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); HttpReq=null; } } return HttpReq; } function ChangeAmount(ref) { var HttpReq=GetHRObject(); HttpReq.onreadystatechange=function() { if(HttpReq.readyState==4&&HttpReq.status==200) { } } HttpReq.open('GET','alt_index.php?dir='+ref,true); HttpReq.send(null); }
Je repasserai plus tard pour t'expliquer mais utilise, en Javascript, l'AJAX (cherche sur Google).
;-)