Zend Framework 1.7.4 kullanarak File Upload

2 Cevap php

Ben Zend Framework 1.7.4 kullanarak bir dosyayı yüklemeye çalışıyorum, ancak başarılı olamamıştır. Ben yararlı oldu, Akrabat's tutorial okudum ama benim projede bu teknikleri kullanıldığı zaman ben işe almak mümkün değildi.

2 Cevap

Deftere linki sadece genel bir Zend Framework öğretici olduğunu ve ZF 1.5 geçmiş değil güncellendi.

Eğer Zend ile başlamak bir kere neyse, bu bir upload almak için kullanacağınız kod bir örnek. Ilanı yapıyor formu doğru dosya yükleme bileşenlerine sahip olmalısınız.

//validate file
//for example, this checks there is exactly 1 file, it is a jpeg and is less than 512KB
$upload = new Zend_File_Transfer_Adapter_Http();
$upload->addValidator('Count', false, array('min' =>1, 'max' => 1))
       ->addValidator('IsImage', false, 'jpeg')
       ->addValidator('Size', false, array('max' => '512kB'))
       ->setDestination('/tmp');

if (!$upload->isValid()) 
{
    throw new Exception('Bad image data: '.implode(',', $upload->getMessages()));
}

try {
        $upload->receive();
} 
catch (Zend_File_Transfer_Exception $e) 
{
        throw new Exception('Bad image data: '.$e->getMessage());
}

//then process your file, it's path is found by calling $upload->getFilename()

"multipart/form-data" için formun enctype özniteliğini ayarlamak unutmayın. Eğer Zend_Form kullanıyorsanız, çağrı

$form->setAttrib('enctype', 'multipart/form-data');

Ayrıca bunun için adlandırma filtresi kullanın, Zend_Form::setDestination önerilmiyor unutmayın:

// Deprecated:
// $upload->setDestination('/tmp');
// New method:
$upload->addFilter('Rename', '/tmp');