Je recherche une solution simple pour appeler une fonction PHP uniquement lorsque un lien est cliqué.
PHP:
function removeday() { ... }
HTML:
Supprimer
MISE À JOUR: le code HTML et PHP sont dans le même fichier PHP
Je recherche une solution simple pour appeler une fonction PHP uniquement lorsque un lien est cliqué.
PHP:
function removeday() { ... }
HTML:
Supprimer
MISE À JOUR: le code HTML et PHP sont dans le même fichier PHP
Tout d'abord, comprenez que vous avez trois langages qui fonctionnent ensemble :
PHP : Il ne s'exécute que côté serveur et répond aux requêtes telles que cliquer sur un lien (GET) ou soumettre un formulaire (POST).
HTML & JavaScript : Ils ne s'exécutent que dans le navigateur de quelqu'un (à l'exception de NodeJS).
Je présume que votre fichier ressemble à quelque chose comme ceci :
<!DOCTYPE HTML>
<html>
Bonjour !
<a href='index.php?hello=true'>Exécuter une fonction PHP</a>
</html>
Parce que PHP ne répond qu'aux requêtes (GET, POST, PUT, PATCH, et DELETE via $_REQUEST), c'est ainsi que vous devez exécuter une fonction PHP même si elles sont dans le même fichier. Cela vous donne un niveau de sécurité, "Devrais-je exécuter ce script pour cet utilisateur ou non ?".
Si vous ne voulez pas rafraîchir la page, vous pouvez faire une requête à PHP sans rafraîchir via une méthode appelée Asynchronous JavaScript and XML (AJAX).
C'est quelque chose que vous pouvez rechercher sur YouTube cependant. Il suffit de rechercher "jquery ajax"
Je recommande Laravel à toute personne commençant pour bien démarrer : http://laravel.com/
En javascript, créez une fonction ajax,
function myAjax() {
$.ajax({
type: "POST",
url: 'votre_url/ajax.php',
data:{action:'call_this'},
success:function(html) {
alert(html);
}
});
}
Ensuite, appelez depuis html,
Supprimer
Et dans votre ajax.php,
if($_POST['action'] == 'call_this') {
// appeler removeday() ici
}
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.