PHP est du code côté serveur et HTML est du code côté client. Pour implémenter l'événement onclick du bouton, le client appelle la fonction côté serveur, il doit donc soumettre une requête au serveur.
Il existe un moyen simple et grossier, c'est-à-dire que lorsque le bouton est une balise a, vous pouvez directement écrire la page php à exécuter dans le href (ou passer à PHP via JS en liant window.location au bouton) . Cette approche nécessite de concevoir un code PHP pour chaque bouton.
Ce que je fais, c'est : event+ajax lie l'événement click au bouton, puis exécute ajax.
1. server.php
<?php if (isset($_POST['action'])) { switch($_POST['action']) { case "btn1":btn1();break; case "btn2":btn2();break; default:break; } } function btn1() { echo "hello 按钮1"; } function btn2() { echo "hello 按钮2"; } ?>
Méthode 1 : index.php
<html> <head> <style> div {width:600px;margin:200px auto;} .btn { background-color:#44c767; -moz-border-radius:28px; -webkit-border-radius:28px; border-radius:28px; border:1px solid #18ab29; display:inline-block; cursor:pointer; color:#ffffff; font-family:Arial; font-size:17px; padding:16px 31px; text-decoration:none; text-shadow:0px 1px 0px #2f6627; } .btn:hover { background-color:#5cbf2a; } .btn:active { position:relative; top:1px; } #btn2 {float:right;} </style> <script type="text/javascript" language="javascript" src="jquery.js"></script> <script type="text/javascript" language="javascript"> function fun(n) { $.ajax({ url:"server.php", //the page containing php script type: "POST", //request type data:{action: n.value}, success:function(result){ alert(result); } }); } function fun2(n) { var url = "server.php"; var data = { action : n.value }; jQuery.post(url, data, callback); } function callback(data) { alert(data); } </script> </head> <body> <div> <button type="button" class="btn" id="btn1" οnclick="fun(this)" value="btn1">按钮1</button> <button type="button" class="btn" id="btn2" οnclick="fun2(this)" value="btn2">按钮2</button> </div> </body> </html>
Méthode 2 : index.php
<html> <head> <style> div {width:600px;margin:200px auto;} .btn { background-color:#44c767; -moz-border-radius:28px; -webkit-border-radius:28px; border-radius:28px; border:1px solid #18ab29; display:inline-block; cursor:pointer; color:#ffffff; font-family:Arial; font-size:17px; padding:16px 31px; text-decoration:none; text-shadow:0px 1px 0px #2f6627; } .btn:hover { background-color:#5cbf2a; } .btn:active { position:relative; top:1px; } #btn2 {float:right;} </style> <script type="text/javascript" language="javascript"> var xmlHttp; function createXMLHttpRequest(){ //检查浏览器是否支持 XMLHttpRequest 对象 if(window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if(window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); } } function fun(n){ createXMLHttpRequest(); var url="server.php"; xmlHttp.open("POST",url,true); xmlHttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); xmlHttp.onreadystatechange = callback; xmlHttp.send("action=" + n.value); } function callback(){ if(xmlHttp.readyState == 4){ if(xmlHttp.status == 200){ alert(xmlHttp.responseText); } } } </script> </head> <body> <div> <button type="button" class="btn" id="btn1" οnclick="fun(this)" value="btn1">按钮1</button> <button type="button" class="btn" id="btn2" οnclick="fun(this)" value="btn2">按钮2</button> </div> </body> </html>
Référence de la méthode 1 :
jQuery ajax - méthode post() :
http://www.w3school.com.cn/jquery/ajax_post.asp
Référence de la méthode 2 :
Créer un objet XMLHttpRequest :
http://www.w3school.com.cn/ajax/ajax_xmlhttprequest_create.asp
Envoyer la requête au serveur :
http://www.w3school.com.cn/ajax/ajax_xmlhttprequest_send.asp
Réponse du serveur :
http://www.w3school.com.cn / ajax/ajax_xmlhttprequest_response.asp
événement onreadystatechange :
http://www.w3school.com.cn/ajax/ajax_xmlhttprequest_onreadystatechange.asp
Pour plus de questions connexes, veuillez visiter le site Web PHP chinois : Tutoriel vidéo PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!