0
我在Zend Framework 2中的圖片上傳問題,其中當我提交表單與圖像它給了一個「從空值創建默認對象」的警告和文件不保存在文件夾中。ZF2圖片上傳警告「從空值創建默認對象」
如果我提交圖像爲空並提交上傳的表單,則內容將保存在數據庫中。
我有我添加代碼參考
public function addAction(){
$form = new Add();
$brand = new Brand();
$form->bind($brand);
$request = $this->getRequest();
if ($request->isPost()) {
$post = array_merge_recursive(
$request->getPost()->toArray(),
$request->getFiles()->toArray()
);
$adapter = new \Zend\File\Transfer\Adapter\Http();
$files = $adapter->getFileInfo();
$mediaFileHttpPostName = 'image-file';
$imageFile = $files[$mediaFileHttpPostName];
$adapter->setDestination('./public/media');
$adapter->addValidator('Extension', false, array('jpge'), $mediaFileHttpPostName);
$adapter->addFilter('Rename',
array(
'target'=> './public/media/'.$imageFile['name'],
'overwrite'=>true),
$mediaFileHttpPostName);
if(!empty($imageFile['name'])){
if (!$adapter->isValid()){
$returnObject->errorMessage = $adapter->getMessages();
$returnObject->result = 0;
} else {
try {
$adapter->receive($mediaFileHttpPostName);
$returnObject->result = 1;
} catch (\Zend\Filter\Exception\InvalidArgumentException $e) {
$returnObject->errorMessage = $e->getMessage();
$returnObject->result = 0;
}
}
}
$form->setData($post);
if ($form->isValid()) {
$recordlist = $this->getServiceLocator()->get('BrandService')->insert($brand,'',$form->getHydrator());
$this->flashMessenger()->addMessage('New brand added!');
return $this->redirect()->toRoute('zfcadmin/shop/brands');
}
}
'新\ stdClass的()'或'使用stdClass的;' – Sam
由於T-編碼器,$返回object =新stdClass的();沒有爲我工作,它給了我致命錯誤,但$ returnObject = new \ stdClass();解決我的問題。 – doubleD