用onClick执行PHP函数
我正在寻找一个简单的解决scheme来调用PHP函数只有当标签被点击。
PHP:
function removeday() { ... }
HTML:
<a href="" onclick="removeday()" class="deletebtn">Delete</a>
更新: HTML和PHP代码在相同的PHP文件
首先,要明白你有三种语言一起工作。
-
PHP:只能由服务器运行,并响应点击链接(GET)或提交表单(POST)等请求。
-
HTML和JavaScript:只能在别人的浏览器中运行(不包括NodeJS)。
我假设你的文件看起来像这样:
<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>
因为PHP只响应请求(GET,POST,PUT,PATCH和DELETE通过$ _REQUEST),所以这就是你如何运行一个PHP函数,即使它们在同一个文件中。 这给了你一个安全级别,“我应该为这个用户运行这个脚本还是不是?”。
如果您不想刷新页面,则可以通过称为Asynchronous JavaScript and XML(AJAX)的方法向PHP发出请求,而无需刷新。
这是你可以在YouTube上查找的东西。 只要search“jquery ajax”
我推荐Laravel给所有新开始的人: http ://laravel.com/
在javascript中,做一个ajax函数,
function myAjax() { $.ajax({ type: "POST", url: 'your_url/ajax.php', data:{action:'call_this'}, success:function(html) { alert(html); } }); }
然后从html调用,
<a href="" onclick="myAjax()" class="deletebtn">Delete</a>
在你的ajax.php中,
if($_POST['action'] == 'call_this') { // call removeday() here }
你将不得不通过AJAX来做到这一点。 我重新推荐你使用jQuery来使你更容易….
$("#idOfElement").on('click', function(){ $.ajax({ url: 'pathToPhpFile.php', dataType: 'json', success: function(data){ //data returned from php } }); )};
如果这是你的button,可以用相当简单的php来完成
<input type="submit" name="submit>
这是你的PHP代码
if(isset($_POST["submit"])) { php code here }
当button被点击时发生的提交get的被发送的代码被调用。
尝试做这样的事情:
"<script type="text/javascript" src="jquery.min.js"></script> <script type="text/javascript"> function doSomething() { $.get("somepage.php"); return false; } </script> <a href="#" onclick="doSomething();">Click Me!</a>
- $(sel).bind(“click”,$(sel).click(,$(sel).live(“click”,$(sel).on(“click”?
- 只有当onclick / oncomplete / on …事件发生时,而不是页面加载时,如何调用JSF backing bean方法
- RecyclerView onClick
- Chrome扩展中的onClick不起作用
- 如何在按下button时防止活动加载两次
- 在链接上模拟jQuery / JavaScript中的点击
- OnClick与OnClientClick为asp:CheckBox?
- 如何在onclick事件中调用多个JavaScript函数?
- 如何将这个元素传递给JavaScript的onclick函数,并添加一个类到单击的元素