Mik*_*ike 86 javascript php ajax onclick
我正在寻找一个简单的解决方案,只有在单击a-tag时调用PHP函数.
PHP:
function removeday() { ... }
Run Code Online (Sandbox Code Playgroud)
HTML:
<a href="" onclick="removeday()" class="deletebtn">Delete</a>
Run Code Online (Sandbox Code Playgroud)
更新: html和PHP代码在同一个PHP文件中
Mic*_*ins 132
首先,要了解您有三种语言协同工作.
PHP:仅由服务器运行并响应请求,例如单击链接(GET)或提交表单(POST).
HTML和JavaScript:仅在某人的浏览器中运行(不包括NodeJS).
我假设你的文件看起来像:
<!DOCTYPE HTML>
<html>
<?php
function runMyFunction() {
echo 'I just ran a php function';
}
if (isset($_GET['hello'])) {
runMyFunction();
}
?>
Hello there!
<a href='index.php?hello=true'>Run PHP Function</a>
</html>
Run Code Online (Sandbox Code Playgroud)
因为PHP只响应请求(通过$ _REQUEST获取GET,POST,PUT,PATCH和DELETE),所以即使它们在同一个文件中,也必须运行PHP函数.这为您提供了一定程度的安全性,"我是否应该为此用户运行此脚本?".
如果您不想刷新页面,可以通过名为Asynchronous JavaScript and XML(AJAX)的方法向PHP发出请求,而无需刷新.
这是你可以在YouTube上查找的内容.只需搜索"jquery ajax"
我推荐Laravel给任何新人开始吧:http://laravel.com/
dev*_*evo 35
在javascript中,创建一个ajax函数,
function myAjax() {
$.ajax({
type: "POST",
url: 'your_url/ajax.php',
data:{action:'call_this'},
success:function(html) {
alert(html);
}
});
}
Run Code Online (Sandbox Code Playgroud)
然后从html调用,
<a href="" onclick="myAjax()" class="deletebtn">Delete</a>
Run Code Online (Sandbox Code Playgroud)
在你的ajax.php中,
if($_POST['action'] == 'call_this') {
// call removeday() here
}
Run Code Online (Sandbox Code Playgroud)
A.O*_*.O. 12
你必须通过AJAX这样做.我很高兴推荐你使用jQuery让你更容易....
$("#idOfElement").on('click', function(){
$.ajax({
url: 'pathToPhpFile.php',
dataType: 'json',
success: function(data){
//data returned from php
}
});
)};
Run Code Online (Sandbox Code Playgroud)
http://api.jquery.com/jQuery.ajax/
小智 11
如果这是你的按钮,它可以用相当简单的PHP完成
<input type="submit" name="submit>
Run Code Online (Sandbox Code Playgroud)
这是你的PHP代码
if(isset($_POST["submit"])) { php code here }
Run Code Online (Sandbox Code Playgroud)
当提交get发布时,在单击按钮时发生代码获取.