Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Upload problem
Forum PHP.pl > Forum > Przedszkole
piotrekk
Witam,
mam nastepujący problem, ale niestety patrze i nadal nie moge znalesc odpowiedzi co jest nie tak.

o to formularz:

  1. <form id="form1" name="form1" enctype="multipart/form-data" method="post" action="tekstSaveHome.php">
  2. <div id="contenerMenuTextarea">
  3. <textarea name="tekst"><? echo $row['tekst']; ?></textarea>
  4. </div>
  5. <div id="contenerMenuTextZdjecia">
  6. <div id="addPhotosText">
  7. Photos number 1:
  8. </div>
  9. <div id="addPhotos">
  10. <input name="userfile[]" type="file" id="1" />
  11. </div>
  12. <div id="addPhotosText">
  13. Photos number 2:
  14. </div>
  15. <div id="addPhotos">
  16. <input name="userfile[]" type="file" id="2" />
  17. </div>
  18. <div id="addPhotosText">
  19. Photos number 3:
  20. </div>
  21. <div id="addPhotos">
  22. <input name="userfile[]" type="file" id="3" />
  23. </div>
  24. <div id="addPhotosText">
  25. </div>
  26. <div id="submit">
  27. <input type="submit" name="Submit" value="Save" />
  28. </div>
  29. </form>


a o to fragment kodu do uploadu kilku plikow na raz:

  1. <?php
  2.  
  3. $upload_dir ='../x/';
  4.  
  5. if(updateText($id, $tekst, $connection))
  6. {
  7.  foreach ($_FILES["userfile"]["error"] as $klucz => $error)//--- jezeli plik jest pusty i folder istnieje
  8.    {    
  9.        if($error == 4)
  10.        {
  11.             $_SESSION['error'] = "The photos are empty! Message was wrote!";
  12.            header("Location: error.php");
  13.            exit;
  14.        }
  15.    }
  16.    foreach ($_FILES["userfile"]["error"] as $key => $error)
  17.    {
  18.    if ($error == UPLOAD_ERR_OK) {
  19.    
  20.        $tmp_name = $_FILES["userfile"]["tmp_name"][$key];
  21.        $name = $_FILES["userfile"]["name"][$key];
  22.        $file_path = $upload_dir.$name;
  23.        move_uploaded_file($tmp_name, $file_path);
  24.          
  25.        }
  26.            $_SESSION['error'] = "The photos were updating. Thank you!";
  27.            header("Location: error.php");
  28.            exit;
  29.    }
  30.        $_SESSION['error'] = "There are some problems with photos updating. ";
  31.        header("Location: error.php");
  32.        exit;
  33. }
  34. ?>


Czy ktos wie dlaczego nie przesyla mi 3 plikow tak jakbym chcial tylko jeden ?

dzieki pozdro
nospor
  1. <?php
  2. print_r($_FILES);
  3. ?>

Nadal widzisz tylko jeden plik?
piotrekk
pokazuje ze sa 3 przesylane, ale zapisuje tylko jeden

  1. <?php
  2. Array ( [userfile] => Array ( [name] => Array ( [0] => b.jpg [1] => a.jpg [2] => c.jpg ) [type] => Array ( [0] => image/jpeg [1] => image/jpeg [2] => image/jpeg ) [tmp_name] => Array ( [0] => /tmp/phpinHPYi [1] => /tmp/phpPHHUv5 [2] => /tmp/phpzFwmHz ) [error] => Array ( [0] => 0 [1] => 0 [2] => 0 ) [size] => Array ( [0] => 3513 [1] => 3513 [2] => 3513 ) ) )
  3. ?>


nie wiem....
nospor
  1. <?php
  2. foreach ($_FILES["userfile"]["error"] as $key => $error)
  3.   {
  4.   if ($error == UPLOAD_ERR_OK) {
  5.  
  6.       $tmp_name = $_FILES["userfile"]["tmp_name"][$key];
  7.       $name = $_FILES["userfile"]["name"][$key];
  8.       $file_path = $upload_dir.$name;
  9.       move_uploaded_file($tmp_name, $file_path);
  10.          
  11.       }
  12.           $_SESSION['error'] = "The photos were updating. Thank you!";
  13.           header("Location: error.php");
  14.           exit;
  15.   }
  16. ?>

przeciez kod z header i exit wykona ci sie juz po pierwszym uploadzie, wiec do nastepnych nie dojdzie....
piotrekk
thx

nie wiem czemu tego nie zauwazylem ;-/

A sluchaj jakbym chcial nazwa każde zdjęcie pokoleji 1,2,3 to jak powinna wyglądać funkcja która by to robiła bo tak kombinuje, z for, ale trudno mi to jakoś sensownie zapisać

thx
nospor
a nie mozesz najwzyklej w swiecie incrementować w foreach jakąś zmienną $i ?
No chyba ze nie zalapalem oco ci chodzi
piotrekk
thx

"a nie mozesz najwzyklej w swiecie incrementować w foreach jakąś zmienną $i ?
No chyba ze nie zalapalem oco ci chodzi"

Co masz na myśli? Możesz podać jakiś przykład bo narazie nie wiem jak to odnieść do tego co napisalem...
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.