Pomocy. Tu zupełnie utknąłem. Formularz we FE ma obsługiwać wysyłanie plików do jakiegoś katalogu i równocześnie zapis jego adresu do bazy. Jak to obsłużyć. Będę wdzięczny za jakiś przykład.
Andrzej
Witamy na polskim forum Contao
Zarejestruj się teraz, aby skorzystać ze wszystkich funkcji forum. Kiedy się zalogujesz, będziesz mógł tworzyć tematy, pisać posty, rozdawać punkty reputacji, korzystać z prywatnych wiadomości i zarządzać swoim profilem. Jeśli posiadasz już konto, zaloguj się - w przeciwnym wypadku zarejestruj się już teraz!
Zarejestruj się teraz, aby skorzystać ze wszystkich funkcji forum. Kiedy się zalogujesz, będziesz mógł tworzyć tematy, pisać posty, rozdawać punkty reputacji, korzystać z prywatnych wiadomości i zarządzać swoim profilem. Jeśli posiadasz już konto, zaloguj się - w przeciwnym wypadku zarejestruj się już teraz!
Obsługa wysyłania plików
Rozpoczęty przez gutenbergus, kwi 13 2012 00:54
#2
Napisano 13 kwietnia 2012 - 07:37
Do uploadu pliku musisz użyć widgetu FormFileUpload, np. o takiej konfiguracji:
'image' => array
(
'name' => 'image',
'label' => $GLOBALS['TL_LANG']['MSC']['up_image'],
'inputType' => 'upload',
'eval' => array('storeFile'=>true, 'uploadFolder'=>'tl_files/uploads', 'extensions'=>$GLOBALS['TL_CONFIG']['validImageTypes'], 'doNotOverwrite'=>true)
)
Plik po wysłaniu formularza jest dostępny w sesji:$_SESSION['FILES']['image'];
Codefog - Contao web development
#3
Napisano 13 kwietnia 2012 - 10:06
No właśnie, Kamilu. Natknąłem się na ten kod już wcześniej, ale jeśli jest umieszczony w pliku DCA to ten typ pola nie pojawia się w BE. Natomiast co do FE to potrzebuję dodatkowych wyjaśnień.
Ja to robię tak: w klasie obsługującej ten formularz pobieram konfigurację z pliku DCA i dalej mam funkcję, która tworzy odpowiednie pole formularza. W takim razie muszę w tej funkcji dopisać całą obsługę uploadu pliku. Dobrze myślę???
Ale coś mi mówi, że wyważam otwarte drzwi.
Załączam plik DCA, klasę formularza, plik z funkcją generującą oraz template.
heeelp.....
Archiwum.zip 5,33 KB
122 Ilość pobrań
Ja to robię tak: w klasie obsługującej ten formularz pobieram konfigurację z pliku DCA i dalej mam funkcję, która tworzy odpowiednie pole formularza. W takim razie muszę w tej funkcji dopisać całą obsługę uploadu pliku. Dobrze myślę???
Ale coś mi mówi, że wyważam otwarte drzwi.
Załączam plik DCA, klasę formularza, plik z funkcją generującą oraz template.
heeelp.....
Archiwum.zip 5,33 KB
122 Ilość pobrań
#4
Napisano 13 kwietnia 2012 - 10:44
Tak, obsługę uploadu pliku musisz zrobić w funkcji w formFieldSetup.php. I masz rację, że wyważasz otwarte drzwi
Bo wystarczy, że kod z http://www.contao.pl...-formularz.html (paragraf "Kod modułu") lekko przerobisz i umieścisz w normalnej klasie:
class FormFieldSetup extends Frontend
{
public function generateField($strField, $varValue, $strType, $arrParams=null)
{
// ...
}
}
a w templatkach będziesz używał:
<?php $this->import('FormFieldSetup'); ?>
<div>
<?php echo $this->FormFieldSetup->generateField(...); ?>
</div>
Codefog - Contao web development
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych użytkowników




Do góry
Zgłoś







