.luki
17.01.2008, 18:19:11
witam, szukam rozwiązania takiego jak jest na gmailu przy dodawaniu załączników, dokładniej:
chcę zrobić tak, żeby na początku mieć jeden form typu:
(...) [Wybierz...]
(dodaj nową pozycję)
po kliknięciu na to, dodaje się nowe pole, tj.:
(...) [Wybierz...]
(...) [Wybierz...]
(dodaj nową pozycję)/(usuń jedną pozycję)
itd, bez przeładowania strony - później chcę to obsługiwać w skrypcie napisanym w php (chodzi o uploadowanie zdjęć)
Cezar708
17.01.2008, 18:30:29
<script language="javascript"> function addInput(){
var dif = document.getElementById("zdjecia");
var newElem = document.createElement('input');
newElem.type="file";
newElem.name="images[]";
dif.appendChild(newElem);
}
<input type="file" name="images[]" />
będzie wszystko inline, ale to to już sobie za pomocą css obrobisz (display: block;)
.luki
17.01.2008, 18:35:54
ok, z obsługą sobie poradziłem, ale jak mogę zrobić, żeby zaraz po dodaniu linka do pliku z dysku od razu zaczynał się uploadować, a nie czekał dopiero na wysłanie forma?
Cezar708
18.01.2008, 09:31:04
Nie da się forma zawsze trzeba wysłać. Oczywiście idzie obejść to poprzez stworzenie dodatkowego forma tylko dla pojedynczego obrazka i wykorzystanie AJAX. Choć w takim przypadku nie polecałbym takiego rozwiązania bo trzeba pozakładać dużo zabezpieczeń (np: nie można wysłać właściwego forma dopóki obrazek kolejny się nie wyśle... w bazie danych trzeba zaznaczać, które obrazki są w danej sesji dodane.. etc...).
Jeśli to nie jest absolutnie niezbędne polecam pozostać przy normalnym uploadowaniu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.