单击img时运行PHP函数

时间:2016-12-23 21:34:36

标签: javascript php html

我想知道在PHP中单击图像时是否有办法执行某个功能?我知道它可以在Javascript中完成。例如,单击foo.png时,将运行以下函数。

function example() {
    header('Location: example.php');
}

1 个答案:

答案 0 :(得分:3)

PHP在服务器上运行,在创建页面之前和创建页面时使用 - 然后将其提交给浏览器进行渲染。

页面呈现并显示给用户后,所有PHP处理都已停止,页面已提供给客户端。服务器代码不再运行 - 时间已过。

进入浏览器后,只能运行客户端代码(javascript)。特别是在与用户交互时,您可以使用客户端代码。

但是,您也可以使用客户端代码(javascript / jQuery)与用户交互(检测单击或鼠标移动),然后使用AJAX将数据发送到另一个服务器端PHP文件。 PHP文件将被唤醒"因为它接收数据,它可以做一些额外的服务器端的东西 - 比如使用接收到的数据来执行数据库查找,然后获取新的数据库数据并创建一些HTML代码并将其发送回页面。这个新的HTML代码可以在AJAX代码块的成功(或.done())函数中注入页面,新数据可以显示在页面上,而无需刷新或导航离开当前页面。

但是为了实际检测用户点击,它是javascript / jQuery。

请注意,PHP也可以将HTML与HTML一起注入 - 但是一旦将代码提供给浏览器进行显示,只有javascript可以与用户交互,而不是PHP。

使用javascript / jQuery,你可以做你想做的事情(代码是正确的但是示例不能正常工作 - 所以不会导航到Google网页):



$('#myImg').click(function(){
  window.location.href = 'http://google.com';
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p>Click below for Google</p>
<img id="myImg" src="http://placeimg.com/50/50/animals" />
&#13;
&#13;
&#13;