【问题标题】:Delete image from database using ajax and php使用ajax和php从数据库中删除图像
【发布时间】:2018-02-05 02:02:11
【问题描述】:

我正在尝试使用 ajax 删除图像。它显示数据已被删除但在表中记录在那里的警报消息。如何从表中删除图像记录....

<span><input type="submit" id="del_btn" value="Delete Image" /></span>
<script type="text/javascript">
$(document).ready(function () {
    $("input#del_btn").click(function(){
         $.ajax({
             type: "POST",
             url: "del.php", // 
             data: {id: <?php echo $delid; ?>},
             success: function(msg){
             alert("Image Deleted from database");  
             },
             error: function(){
             alert("failure");
           }
           });
        });
    });
  </script>

这是del.php

<?php
if (isset($_POST['id'])) {
    $imgid = $_POST['id'];
    $con=new PDO("mysql:host=localhost;dbname=newimg","root","");
    $sql = "DELETE FROM attempt010 WHERE id='$imgid' ";
    $con->execute($sql);
}
?>

【问题讨论】:

标签: php mysql ajax


【解决方案1】:

PDO execute 函数执行准备好的语句。所以你需要准备然后执行。准备好的语句也应该参数化。试试:

if (isset($_POST['id'])) {
    $imgid = $_POST['id'];
    $con=new PDO("mysql:host=localhost;dbname=newimg","root","");
    $sql = "DELETE FROM attempt010 WHERE id=?";
    $stmt = $con->prepare($sql);
    $stmt->execute(array($imgid));
}

欲了解更多信息,请参阅:

  1. http://php.net/manual/en/pdostatement.execute.php
  2. http://php.net/manual/en/pdo.prepare.php
  3. http://php.net/manual/en/pdo.prepared-statements.php

【讨论】:

  • 它正在工作,谢谢@chris85.. 我怎样才能删除图像的预览?
  • 我不知道,什么是预览?您的意思是从发送 AJAX 的页面上删除它吗?
  • 是的..我的意思是在那个页面中我已经获取了上传的图像..我已经创建了删除按钮来从数据库中删除记录..我也不想删除预览...@克里斯
  • 代替alert("Image Deleted from database"); 做类似$('#image').attr('display', 'none'); 或类似的事情。这是一个 JS/CSS 问题/问题,而不是 PHP。
猜你喜欢
  • 2015-01-04
  • 1970-01-01
  • 2021-12-08
  • 1970-01-01
  • 2011-02-07
  • 2013-04-14
  • 2013-11-17
  • 2021-04-05
  • 2018-08-07
相关资源
最近更新 更多