![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 23.03.2007 Skąd: United Kingdom Ostrzeżenie: (10%) ![]() ![]() |
Mam pytanko, próbuje przy uploadowaniu stworzyć dwie bariery, dokładnie dwa formularze następujące po sobie:
pierwszy przechodzi w przypadku pobrania właściwego typu pliku drugi właściwego hasła: teraz mam takie polecenie sprawdzające: Kod if (is_uploaded_file($_FILES['plik']['tmp_name'])) {echo"upload";} oczywiście działa w przypadku gdy wysłałem plik na serwer, ale tylko po pierwszym wywołaniu formularza, chodzi mi o to czy da się zapisać te dane na przykład do ciasteczka, tak bym mógł wywołać ten warunek ponownie, po użyciu kolejnego formularza? jeśli trzeba jaśniej to dam kod, dzięki za uwagę (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif) Ten post edytował glass 27.10.2008, 00:58:27 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) ![]() ![]() |
Witaj!
Możesz ustawić jakąś flagę w sesji po prostu i zerować ją przy wyświetlaniu drugiego formularza. Pozdrawiam! |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 23.03.2007 Skąd: United Kingdom Ostrzeżenie: (10%) ![]() ![]() |
rozumiem że chodzi Ci o takie rozwiązanie:
Kod <?php if (is_uploaded_file($_FILES['plik']['tmp_name'])) { session_start(); $_SESSION['file']=$_FILES['plik']['tmp_name']; } ?> po pierwszym wywołaniu formularza, mogę wywołać sesję i nadać jej ścieżkę pliku uploadowanego, ale co mi z tego? to polecenie po przejściu do kolejnego formularza nie będzie aktywne: Kod move_uploaded_file($_SESSION['file'], $lokacja); będę miał jedynie sesje, ale co z nią zrobić, czy mogę zamiast powyższej komendy użyć polecenia copy, czy to wypada w przypadku uploadu? Ten post edytował glass 27.10.2008, 21:24:55 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
zaraz po uploaddzie musisz plik skopiowac do swojego jakiegos katalogu tymczasowego.
Przy drugim formie bedziesz pobieral plik wlasnie z tamtej lokalizacji. Swoj plik tymczasowy czysc co jakis czas by usunac smieci - pliki pozostale, bo ktos nie doszedl do kroku drugiego |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 23.03.2007 Skąd: United Kingdom Ostrzeżenie: (10%) ![]() ![]() |
dzięki za pomoc, ok jest to jakieś rozwiązanie, doszedłem do kopiowania przez copy i jest coś nie tak:
Kod <?php $_SESSION['file']=$_FILES['plik']['tmp_name']; $_SESSION['lokacja']=$_SERVER['DOCUMENT_ROOT'] . '/lama/include/' . basename($_FILES['plik']['name']); ?> Kod <?php $potwierdz=$_POST['potwierdz']; $haslo=$_POST['haslo']; if(($haslo == "ff") or ($haslo == "haslo:ff") and ($potwierdz == "ok")) { session_start(); copy($_SESSION['file'], $_SESSION['lokacja']); setcookie('haslo', 'ff'); echo"<div id='gotowe'>GOTOWE</div>"; } ?> w sposób powyżej nie chce kopiować, natomiast jeśli umieszczę copy poza warunkiem to kopiuje bez problemu, o co chodzi? Ten post edytował glass 27.10.2008, 23:01:57 |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
zdajesz sobie sprawe, iz ten warunek:
($haslo == "ff") or ($haslo == "haslo:ff") and ($potwierdz == "ok") zachowa sie inaczej niz ten: (($haslo == "ff") or ($haslo == "haslo:ff")) and ($potwierdz == "ok") ? Podobnie z dzialaniem arytmetycznym: 2+3*4 da ci inny wynik niz (2+3)*4 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 0 Dołączył: 23.03.2007 Skąd: United Kingdom Ostrzeżenie: (10%) ![]() ![]() |
zaraz to poprawie, działanie matematyczne faktycznie mówi co innego!
dzienx, powyższy problem już rozwiązałem używając do przenoszenia danych move_uploaded_file i tyle :A |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 11:39 |