Zend Framework和php取消链接文件

时间:2012-12-05 12:45:56

标签: php html

我正在尝试使用CHECKBOX字段从提交的表单中删除一些图像,以及相关的隐藏字段以获取要从文件中取消链接的图像的名称。我正在和Zend FW合作,在控制器中我有这个:

  if ($input->isValid()) {
            $q = Doctrine_Query::create()
                ->delete('Immobiliare_Model_Images i')
                ->whereIn('i.ImageID', $input->ids);

        $result = $q->execute()

 $image = $this->_getParam('Image');            
        foreach($image as $img) {
             if(isset($input->ids)) {               
             $file = "./uploads/$img";
                    unlink($file);
                 } }

上述代码的问题在于它取消了所有文件的链接,即使是那些尚未检查的文件。还试过这个:

$image = $this->_getParam('Image');
      if(isset($input->ids)) {  
          foreach($image as $img) {
             $file = "./uploads/$img";
                 unlink($file);
                 } }

同样的问题:数组中的所有文件都被删除(取消链接)。如果我不使用foreach()函数,则不删除任何文件。我只想说删除数据库中的文件名就可以了。

所以我的问题是:如何取消选中复选框的图像?谢谢您的帮助。

html如下:

<?php foreach($this->records as $r):?>
 <input type="checkbox" name="ids[]" value="<?php echo $r['ImageID']; ?>" class="require-one" />
 <input type="hidden" name="Image[]" value="<?php echo $this->escape($r['Image']); ?>" />
 <?php endforeach; ?> 

...

0 个答案:

没有答案