upload souboru a uložní názvu souboru do db
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Aleš Jandera
- Člen | 24
Ahoj, potreboval bych uploadovat soubor a uložit jmeno do db. Nevím kde mám chybu, ale po submitu se nic nestane.
v presenteru mám
<?php
protected function createComponentXmlForm()
{
$form = new Form();
$form->addUpload('xml', 'Vlož .xml:')
->addRule(Form::MIME_TYPE,'Povolené typy souborů jsou pouze xml','text/xml')
->addRule(Form::MAX_FILE_SIZE, 'Max size is 1 Mb.', 1000 * 1024 /* v bytech */)->getControlPrototype()->class('input');
$form->addSubmit('upload', 'Vložit')->getControlPrototype()->class('button');
$form->onSuccess[] = callback($this, 'xmlFormSubmitted');
return $form;
}
public function xmlFormSubmitted(Form $form)
{
$file = $form['xml']->getValue();
$name = $file->getName();
$id = $this->getUser()->getId();
$date = new DateTime();
$upload = WWW_DIR . "/www/data/" . $name . $id . $date;
if ($file->isOK()){
$file->move($upload);
}
$this->context->getService('data')
->insert(array(
'data' => $name. $id . $date,
'user' => $id,
'insert_date' => new DateTime(),
));
$this->flashMessage('XML soubor úspěšně nahrán.', 'success');
$this->redirect('this');
}
?>
- Aleš Jandera
- Člen | 24
no vzpíše to pouze ?do-xmlForm-submitt a pak už nic, zkoušel jsem dumpnut promené ten uploadovaný soubor to vidí, když dumpnu tak mám jeho jméno. neví ale na čem se to zasekne