Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> upload dwóch plików do dwóch różnych katalogów, funkcja foreach() dla uploadowanych dwóch plików
mpps
post
Post #1





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


Cześć.
Może ktoś z Was będzie tak miły i podpowie jak wykonać upload dwóch plików do dwóch różnych katalogów na serwerze za jednym zamachem?

Nie wiem, czy dobrym rozwiązaniem tutaj jest pętla foreach(), a jeśli tak, to jak rozróżnić w jej tablicy dwa różne elementy, co jest chyba niemożliwe... sam nie wiem (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif)

Z góry dzięki...


  1. <?
  2. if ($admaction == "addfrm_cfm"){
  3. ?>

  1. <FORM METHOD="post" NAME="frm_cfm" ACTION="index.php?admaction=addfrm_cfmok" ENCTYPE="multipart/form-data">
  2. <TR>
  3. <TD>
  4. <INPUT TYPE="text" NAME="id" VALUE="" SIZE="2">
  5. </TD>
  6. </TR>
  7. <TR>
  8. <TD>foto full</TD>
  9. <TD>
  10. <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="5000000">
  11. <INPUT CLASS="formText2" TYPE="file" NAME="foto_full" SIZE="42">
  12. </TD>
  13. </TR>
  14. <TR>
  15. <TD>foto thmb</TD>
  16. <TD>
  17. <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="5000000">
  18. <INPUT CLASS="formText2" TYPE="file" NAME="foto_thmb" SIZE="42">
  19. </TD>
  20. </TR>
  21. <TR>
  22. <TD>
  23. <INPUT TYPE="SUBMIT" NAME="dodaj" VALUE="dodaj"> <INPUT TYPE="button" NAME="powrot" VALUE="powrót">
  24. </TD>
  25. </TR>
  26. </FORM>

  1. <?
  2. }
  3.  
  4. elseif ($admaction == "addfrm_cfmok"){
  5. $plik_katalog_full = "img/fullsize/";
  6. foreach($_FILES as $plik_nazwa_full => $plik_tablica_full){
  7. echo "ścieżka: ".$plik_tablica_full['tmp_name']."<BR>";
  8. echo "nazwa: ".$plik_tablica_full['name']."<BR>";
  9. echo "typ: ".$plik_tablica_full['type']."<BR>";
  10. echo "rozmiar ".$plik_tablica_full['size']."<BR>";
  11.  
  12. if(is_uploaded_file($plik_tablica_full['tmp_name'])){
  13. move_uploaded_file($plik_tablica_full['tmp_name'],
  14. "$plik_katalog_full/$plik_tablica_full[name]") or die ("nie można przenieść pliku");
  15. echo "plik został przeniesiony!<BR><BR>";
  16. }
  17. }
  18.  
  19. /* to, co jest poniżej, mniej więcej tak by miało wyglądać do ładowania drugiego 
    pliku
  20. $plik_katalog_thmb = "img/thumbnails/";
  21. foreach($_FILES as $plik_nazwa_thmb => $plik_tablica_thmb){
  22. echo "ścieżka: ".$plik_tablica_thmb['tmp_name']."<BR>";
  23. echo "nazwa: ".$plik_tablica_thmb['name']."<BR>";
  24. echo "typ: ".$plik_tablica_thmb['type']."<BR>";
  25. echo "rozmiar ".$plik_tablica_thmb['size']."<BR>";
  26.  
  27. if(is_uploaded_file($plik_tablica_thmb['tmp_name'])){
  28. move_uploaded_file($plik_tablica_thmb['tmp_name'],
  29. "$plik_katalog_thmb/$plik_tablica_thmb[name]") or die ("nie można przenieść pliku");
  30. echo "plik został przeniesiony!<BR><BR>";
  31. }
  32. }
  33. */
  34. }
  35. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mpps
post
Post #2





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


@Ludvik dzięki za odpowiedź.
w sumie, to zapis:
  1. <?php
  2. $_FILES[foto_full]['tmp_name']
  3. ?>

nie spowodował błędu, więc pewnie można by go tak zostawić, ale dla zachowania prawidłowości stosowania kodu sam to zmieniłem w między czasie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

teraz mam kolejny problem, który staram się rozwiązać.
chodzi mi mianowicie o usuwanie plików z serwera, czyli funkcję unlink().
jakie mam problemy i pytania? całe mnóstwo... bo dopiero zacząłęm to robić (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
np. w związku z tym, że informację o nazwie pliku zapisuję w bazie danych, chcę, żeby np. poprzez zastosowanie chcekbox-a przy polu formularza, w którym wartością jest nazwa pliku (dokładna, łącznie z rozszerzeniem) pobierana z bazy, plik ten był usuwany z serwera.
jeśli będziesz (wszyscy będziecie) mieli jakieś pomysły, to będę wdzięczny!

pozdrawiam!

problem rozwiązany, jak zwykle rozwiązanie było bardzo proste.
jeśli ktoś będzie potrzebował pomocy, to proszę otworzyć nowy temat i dać mi znać na priva.
jak znajdę czas, to napiszę tutaj rozwiązanie (chyba, że temat zostanie zamknięty...)

Ten post edytował mpps 8.07.2006, 21:57:09
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 15:26