【发布时间】:2016-02-12 10:45:28
【问题描述】:
我的服务器存储 2 个视频文件和 2 个数据库记录。
如果用户选择删除文件,我会尝试从我的数据库中删除它。
从数据库中删除的脚本:
$result = mysqli_query($db_connection , "DELETE FROM `viewvideo` WHERE `video_id`='".$video_id."'");
$result2 = mysqli_query($db_connection , "DELETE FROM `video480p` WHERE `video_id`='".$video_id."'");
使用此脚本检索文件路径:
$deleteOrigVideo = mysqli_query($db_connection, "Select video_link FROM viewvideo WHERE `video_id`='".$video_id."'");
$delete480pVideo = mysqli_query($db_connection, "Select video_link FROM video480p WHERE `video_id`='".$video_id."'");
删除文件:
unlink($deleteOrigVideo);
unlink($delete480pVideo);
取消链接部分不起作用。我得到 unlink() 期望参数 1 是有效路径,
原始视频存储在original中,480p视频存储在original\480p
var_dump($deleteOrigVideo, $delete480pVideo);
输出:
object(mysqli_result)[2]
public 'current_field' => null
public 'field_count' => null
public 'lengths' => null
public 'num_rows' => null
public 'type' => null
object(mysqli_result)[3]
public 'current_field' => null
public 'field_count' => null
public 'lengths' => null
public 'num_rows' => null
public 'type' => null
【问题讨论】:
-
你能显示
var_dump($deleteOrigVideo, $delete480pVideo);返回的内容吗? -
检查文件权限。
-
另外,您可能应该使用准备好的语句,而不是在查询中注入
$video_id,但是,这超出了这个问题的范围;) -
您只运行一个不返回任何数据的
query,它只返回一个mysqli_result对象。你需要做某种mysqli_fetch_*()来获得结果集 -
@Will 将输出添加到我的帖子中。
标签: php