在我的數據庫中我有一個varchar
字段來保存路徑包括圖像文件的名稱。在我的視圖中,我也使用這個字段。如果我通過phpadmin在我的數據庫中插入一個測試路徑名,那麼一切正常。添加操作失敗的圖像路徑的值
如果我使用我的控制器addAction,我不能保存路徑,沒有錯誤。
這裏是我的addAction:
$form = new Application_Form_Buch();
$form->submit->setLabel('Add');
$this->view->form = $form;
if ($this->getRequest()->isPost()) {
$formData = $this->getRequest()->getPost();
if ($form->isValid($formData)) {
$autor = $form->getValue('autor');
$verlag = $form->getValue('verlag');
$titel = $form->getValue('titel');
if($form->getElement('datei')->receive() <> 1)
{
echo ' filename: '. $form->getElement('datei')->receive();
$imagepath = $form->getElement('datei')->getFileName();
//echo ' filename: '. $form->getElement('datei')->getFileName();
$pathparts = pathinfo($form->getElement('datei')->getFileName());
//echo ' pathparts: '. $pathparts;
//then get the part that you want to use
$originalFilename = $pathparts['basename'];
//echo ' originalFilename: '. $originalFilename;
//echo ' Test basename: '. $originalFilename['basename'];
$form->getElement('datei')->addFilter('Rename','images'); //'/images/upload/',$originalFilename
//rename funktioniert so nicht
$originalFilename = $pathparts['basename'];
$imagepath=$form->getElement('datei')->getFileName();
$imagepath = str_replace($imagepath, "/images/cover/".$originalFilename, $imagepath); //funktioniert !!!
//echo ' imagepath: '. $imagepath;
$books = new Application_Model_DbTable_Bibliothek();
$books->addBook($autor, $titel, $verlag, $imagepath);
}
else{
$imagepath=NULL;
}
// $this->_helper->redirector('index');
} else {
$form->populate($formData);
}
}
請鴕鳥政策心目中,我試過了一下週圍,所以我必須留下一些評論。我測試了變量$imagepath
並提供了想要的值,即:/images/cover/imagename.jpg
。這個錯誤在哪裏pathvalue
?
這裏是我的附加功能,我用我的數據庫存儲:
public function addBook($autor, $titel, $verlag, $pfad)
{
$data = array(
'autor' => $autor,
'titel' => $titel,
'verlag' => $verlag,
'pfad' => $pfad,
);
$this->insert($data);
}
它的工作原理相當精細,它保存所有數據正在添加,而不是$pfad
變量。
新: 必須是$imagepath
格式的東西,我剛剛添加了測試:$imagepath= '/images/cover/Labyrinth_200.jpg';
並在我的數據庫表中找到值。所以錯誤應該是獲取值爲$imagepath
的格式。
什麼是錯誤信息? –
正如我之前寫的,我沒有得到任何錯誤消息,只是鏈接被解僱的記錄集 –