我有一页图片。
在图像上有一个按钮来显示图像。
如果他们点击按钮,我有一个php脚本,可以将图像添加到你的收藏夹。
我想在不使用php脚本的情况下执行php代码。
我的html是这样的。
<div id="image">
<form action="favoriet.php" method="post">
<input type="hidden" name="aid" value="<?php echo $subimgid?>">
<input type="image" src="/media/img/icons/twitter.png" alt="Submit button">
</form>
</div>
因此,我将subimgid发布到favoriet.php,在favoriet.php中,我运行脚本,使用发布的值aid和会话用户id将其插入数据库。
一切正常,但我不希望在屏幕上打开favoriet.php页面。
我认为jquery/ajax是必要的,不确定。
最佳答案
我要做的是将一个类添加到imgfavimg
中,然后添加另一个名为data-id
的属性,该属性包含id。然后可以直接在图像上使用jQuery,而不需要表单。
下面的代码将向favoriet.php
提交一个POST请求,其ID存储在data-id
attibute中
<img class='favimg' data-id="<?php echo $subimgid?>" src="/media/img/icons/twitter.png" alt="Submit button">
<script>
$('.favimg').click(function() {
$.post('favoriet.php', { aid: $(this).attr('data-id')});
});
</script>
附带说明:alt文本应该说明图像的一些内容。所以如果图片是twitter的标志,我会使用'twitter'作为alt文本。这将为搜索引擎创建更好的索引。
如果页面上只有一个图像并且其目标是提交完整的表单,则使用alt
submit button
。你想提交的是“我点击了twitter按钮”,所以我的用户必须知道它包含twitter的标志。关于php - 发布带有img隐藏的PHP脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15359401/