Php 使用CodeIgniter(3)删除服务器上的文件(非本地)
我有一个名为home_view的视图,其中有几个列表,例如libri(books)。用户可以上传和删除文件 这是home_view.php的一个片段Php 使用CodeIgniter(3)删除服务器上的文件(非本地),php,mysql,codeigniter,server,unlink,Php,Mysql,Codeigniter,Server,Unlink,我有一个名为home_view的视图,其中有几个列表,例如libri(books)。用户可以上传和删除文件 这是home_view.php的一个片段 <?php echo "<table>"; echo "<tbody>"; echo "</br>"; foreach ($libri as $row): ?> <tr> <td> <div>
<?php
echo "<table>";
echo "<tbody>";
echo "</br>";
foreach ($libri as $row):
?>
<tr>
<td>
<div>
</br>
<img src="<?php echo base_url('Immagini/book.png'); ?>" />
<a class="pdf" data-fancybox-type="iframe" rel="group" href="<?php echo base_url($row['Url_suffix']) ?>"><?php echo $row['Nome']; ?> </a>
<a class="deleteUser" href="javascript:void(0)" rel="<?php echo site_url('libro/elimina/'.$row['ID']) ?>"><img src="<?php echo base_url('Immagini/button_close.png'); ?>"/></a>
</div>
</td>
</tr>
<?php
endforeach;
?>
但是没有成功。我怎么了
更新:
控制器libro.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Libro extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->helper("file");
}
public function elimina($libri_id) {
//$libri_ID = $this->libri->get_one($libri_id);
$result=$this->libri->did_delete_row($libri_id);
redirect(site_url('admin/dashboard'), 'refresh');
}
}
?>
您不能以这种方式使用“取消链接”,基本上您需要在模型的帮助下,在控制器上处理要删除的内容,例如:
public function delete_file($route, $file){
unlink($route . "/" . $file);
}
在可以在任何地方使用的模型中,$route参数将是存储文件的目录的路径,例如:
htdocs/website/static/books/user/
$file参数将是您要删除的带扩展名的名称,如:
myfirstbook.pdf
然后,您将拥有指向该文件的完整路径,并且该文件将被删除,您只需从控制器中的模型调用该函数,该模型中的链接由该锚点提供,如
<a href="http://localhost/website/delete-file/$user/$name">Delete file</a>
一切都结束了。
希望有帮助。您不能以这种方式使用“取消链接”,基本上,您需要在控制器上处理要删除的内容,并借助模型,例如:
public function delete_file($route, $file){
unlink($route . "/" . $file);
}
在可以在任何地方使用的模型中,$route参数将是存储文件的目录的路径,例如:
htdocs/website/static/books/user/
$file参数将是您要删除的带扩展名的名称,如:
myfirstbook.pdf
然后,您将拥有指向该文件的完整路径,并且该文件将被删除,您只需从控制器中的模型调用该函数,该模型中的链接由该锚点提供,如
<a href="http://localhost/website/delete-file/$user/$name">Delete file</a>
一切都结束了。
希望有帮助。您没有取消链接()任何WARE,请将您的控制器添加到您的问题中。@wolfgang1983我刚刚编辑了问题,并添加了libro控制器。您没有取消链接()任何WARE,请将您的控制器添加到您的问题中。@wolfgang1983我刚刚编辑了问题,并添加了libro控制器