Diskuze: Nette - Upload File

Tvůrce

Zobrazeno 8 zpráv z 8.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
řeším to samé , akorát chci multiupload našla jsem na githubu že
stačí udělat
composer create-project --stability="dev" jkuchar/multiplefileupload-example mfu-example
ale netuším kam to napsat, a jestli jsem to dobře pochopila, tak pak by mělo jít normálně přidat prvek
$this->addMultipleFileUpload("upload","Attachments");
Za předpokladu, že chceš nahrát obrázek:
protected function createComponentNajakejForm()
{
$form = new \Nette\Application\UI\Form;
$form->addUpload("file","Obrázek 1");
$form->addSubmit("save", "Uložit")->onClick[] = callback($this, "saveNecoClicked");
}
public function saveNecoClicked(\Nette\Forms\Controls\Button $button)
{
$form = $button->form;
$values = $form->values;
$file = $values['file']
// kontrola jestli se jedná o obrázek a jestli se nahrál dobře
if($file->isImage() and $file->isOk()) {
// oddělení přípony pro účel změnit název souboru na co chceš se zachováním přípony
$file_ext=strtolower(mb_substr($file->getSanitizedName(), strrpos($file->getSanitizedName(), ".")));
// vygenerování náhodného řetězce znaků, můžeš použít i \Nette\Strings::random()
$file_name = uniqid(rand(0,20), TRUE).$file_ext;
// přesunutí souboru z temp složky někam, kam nahráváš soubory
$file->move(UPLOAD_DIR . '/data/'. $file_name);
//v případě, že chceš vytvořit z obrázku i miniaturu
$image = \Nette\Image::fromFile(UPLOAD_DIR . '/data/'. $file_name);
if($image->getWidth() > $image->getHeight()) {
$image->resize(140, NULL);
}
else {
$image->resize(NULL, 140);
}
$image->sharpen();
$image->save(UPLOAD_DIR . '/data/thumbs/'. $file_name);
}
}
Snad je to OK, píšu to bez testování
Jinak na multiupload jsem používal jak píšeš od Honze Kuchaře
http://addons.nette.org/…lefileupload
Ale na nový projekty se podívám po něčem jiným, myslím, že nette toto
už taky nějak řeší
viz
http://forum.nette.org/…lly-released
Forms
- UploadControl allowes multiple files upload
na něco jsem se tam podívala, ale hlásí mi to chybu
Call to undefined method Nette\Forms\Controls\MultiUploadControl::addMultiUpload()
a tu třídu mám z toho Githubu.
Takže sem hledal nějakej projekt na Nette 2.0+ co tu mám, ale v žádném
jsem to nepoužil (sice použil, ale pak předělal, takže to tam nemám). Mám
jeden kde je i fotogalerie a tam používám Plupload
http://addons.nette.org/cs/mfu
Vím, že s ním nebyly takové problémy jako s MFU a stejně sem využíval
jen tu část Plupload z něj. Zkus se na něj podívat. Klidně kdyby nebylo
jasné z toho návodu, tak zkusím zkopírovat co mám já, ale nezaručuji, že
na něco nezapomenu, stejně jsem jel podle tohoto
díky, ale nevím co je přesně myšleno tímto -
jQuery a jQuery UI v hlavičce i s patřičnými css
jenom knohovny nebo něco jiného?
jenom ty knihovny
Zobrazeno 8 zpráv z 8.