Nelze uložit načtený obrázek z formuláře
- razorlight
- Člen | 15
Ahoj,
mám problém s ukládáním obrázků z formuláře. Toto je můj kód:
<?php
protected function createComponentAkceForm(){
$form = new Form();
$form->addUpload('img', 'Soubor: ')->addRule(Form::IMAGE, 'Soubor musí být JPEG, PNG nebo GIF.');
$form->addText('popis', 'Popis: ', 50)->addRule(Form::FILLED, 'Je nutné zadat informace o obrázku.');
$form->addSubmit('create', 'Nahrát');
$form->addSubmit('cancel', 'Zrušit')->setValidationScope(FALSE);
$form->onSuccess[] = [$this, 'akceFormSubmitted'];
return $form;
}
public function akceFormSubmitted($form, $values){
if($form['cancel']->isSubmittedBy()){
$this->flashMessage('Nahrávání zrušeno.', 'notice');
$this->redirect('default');
}
if($form['create']->isSubmittedBy()){
if($values['img']->isOK()){
$filename = $values['img']->getSanitizedName();
$targetPath = $this->fotogalerieManager->getImagesDir();
$values['img']->move($this->context->params('wwwDir') . $targetPath . $filename);
$this->fotogalerieManager->insertImageInformations($targetPath, $filename, $values, $filename);
$this->redirect('default');
} else {
$this->flashMessage('Obrázek se nepodařilo nahrát na server.', 'warning');
}
}
}
?>
Zkoušel sem je ukládat jen do wwwDir a stejně to nešlo. Přitom bych řekl, že v tomhle žádná chyba není. Poradíte někdo?
Díky
- David Matějka
- Moderator | 6445
a hlasi to nejakou chybu? nebo to selze na tom isOk()? jestli to druhe, tak se koukni na getError
- razorlight
- Člen | 15
Chybu to žádnou nehází, dokonce když ten obrázek už je ve složce a já tam nahraju ten samej znova, tak se do db uloží cesta k němu a normálně se zobrazí.
- razorlight
- Člen | 15
no neukládají se obrázky do složky, sem ho tam musel dát ručně abych vyzkoušel jestli se ukládá cesta do db
- David Matějka
- Moderator | 6445
jo minimalne je tam spatne context->params('wwwDir')
, melo by
tam byt context->parameters['wwwDir']
.. to mi nerikej, ze to
nehazi chybu?
a na context bys nemel sahat. mrkni na https://forum.nette.org/…-nebo-appdir#… .. v tvem pripade ti tu cestu muze vracet fotogalerie manager
- razorlight
- Člen | 15
No přepsání params na parameters nepomohlo, chová se to furt stejně. O ladění se budu starat pak až tohle zprovozním. Nemůže tam být spíš někde nějaký problém v právech, který mě nepustí k zápisu do složky?
Editoval razorlight (22. 2. 2016 10:45)
- David Matějka
- Moderator | 6445
no je divne, ze to nehaze zadnou chybu. dostane se to vubec do te vetve, kde ukladas soubor?