Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Upload plików na serwer
Forum PHP.pl > Forum > Przedszkole
zolasty
Witam. Poniżej przedstawiam kod wysyłania zdjęcia na serwer. Wie ktoś dlaczego tak się dzieje że jedno zdjęcie dodaje na serwer i robi miniaturkę bez problemu a jak dodałem do formularza 2giego inputa typu file, name tym razem plik2 skopiowałem kod który działa podstawiłem w miejsce plik -> plik2 żeby nadpisywało poprostu zmienne to pisze że niezdefiniowany plik2?

Notice: Undefined index: plik2 in /home/zolasty/domains/house4you.unl.pl/public_html/modules/add_advert.php on line 106

Notice: Undefined index: plik2 in /home/zolasty/domains/house4you.unl.pl/public_html/modules/add_advert.php on line 108

Notice: Undefined index: plik2 in /home/zolasty/domains/house4you.unl.pl/public_html/modules/add_advert.php on line 109

  1. <?php
  2.  
  3. require_once('config.php');
  4.  
  5. if (isset($_POST['submit']))
  6. {
  7.  
  8. //fragment kodu
  9.  
  10. mysql_query($zapytanie) or die('Error, insert query failed');
  11. $idogloszenia= mysql_insert_id();
  12.  
  13. echo 'Ogloszenie dodane. ';
  14.  
  15.  
  16. $query= mysql_query("SELECT max(id) FROM zdjecia");
  17. $row= mysql_fetch_row($query);
  18. $nowyNR = $row[0] + 1;
  19.  
  20. $plik_tmp = $_FILES['plik']['tmp_name'];
  21. $plik_nazwa = $nowyNR;
  22. $plik_rozmiar = $_FILES['plik']['size'];
  23. $rozszerzenie = explode('.', $_FILES['plik']['name']);
  24.  
  25.  
  26. if(is_uploaded_file($plik_tmp))
  27. {
  28. move_uploaded_file($plik_tmp, "photos/$plik_nazwa.$rozszerzenie[1]");
  29. $query2= mysql_query("INSERT INTO zdjecia VALUES({$nowyNR}, '{$idogloszenia}')");
  30.  
  31. echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze
  32. <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer! ";
  33.  
  34. /*
  35. Kod na licencji GPLv2
  36. Autor: Grzegorz Zdanowski
  37.  
  38. Dozwolone modyfikowanie i rozpowszechnianie pod
  39. warunkiem pozostaiwania informacji o autorze.
  40. */
  41.  
  42. function resize_ratio($file, $new_w, $new_h, $save)
  43. {
  44. if (!is_readable($file))
  45. {
  46. return FALSE;
  47. }
  48.  
  49. $info = @getimagesize($file);
  50. switch ($info['mime'])
  51. {
  52. case "image/gif":
  53. $file = imagecreatefromgif($file);
  54. break;
  55. case "image/jpeg":
  56. $file = imagecreatefromjpeg($file);
  57. break;
  58. case "image/png":
  59. $file = imagecreatefrompng($file);
  60. break;
  61. }
  62.  
  63. $old_x = imageSX($file);
  64. $old_y = imageSY($file);
  65.  
  66. if ($old_x > $old_y)
  67. {
  68. $thumb_w=$new_w;
  69. $thumb_h=$old_y*($new_h/$old_x);
  70. }
  71.  
  72. if ($old_x < $old_y)
  73. {
  74. $thumb_w=$old_x*($new_w/$old_y);
  75. $thumb_h=$new_h;
  76. }
  77.  
  78. if ($old_x == $old_y)
  79. {
  80. $thumb_w=$new_w;
  81. $thumb_h=$new_h;
  82. }
  83.  
  84. $th = ImageCreateTrueColor($thumb_w, $thumb_h);
  85. @imagecopyresampled($th, $file, 0, 0, 0, 0, $thumb_w, $thumb_h, $old_x, $old_y);
  86. @imagejpeg($th, $save);
  87. @imagedestroy($file);
  88. @imagedestroy($th);
  89. return TRUE;
  90. }
  91.  
  92. /* Uzycie */
  93. resize_ratio("photos/$plik_nazwa.$rozszerzenie[1]", "256", "256", "miniatury/$plik_nazwa.$rozszerzenie[1]");
  94. }
  95.  
  96. else
  97. {
  98. echo "Nie udało się wysłać pliku <strong>$plik_nazwa</strong> na serwer. ";
  99. }
  100.  
  101.  
  102. $query2= mysql_query("SELECT max(id) FROM zdjecia");
  103. $row= mysql_fetch_row($query2);
  104. $nowyNR = $row[0] + 1;
  105.  
  106. $plik_tmp = $_FILES['plik2']['tmp_name'];
  107. $plik_nazwa = $nowyNR;
  108. $plik_rozmiar = $_FILES['plik2']['size'];
  109. $rozszerzenie = explode('.', $_FILES['plik2']['name']);
  110.  
  111.  
  112. if(is_uploaded_file($plik_tmp)) {
  113. move_uploaded_file($plik_tmp, "photos/$plik_nazwa.$rozszerzenie[1]");
  114. $query2= mysql_query("INSERT INTO zdjecia VALUES({$nowyNR}, '{$idogloszenia}')");
  115.  
  116. echo "Plik2: <strong>$plik_nazwa</strong> o rozmiarze
  117. <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
  118.  
  119. }
  120. else
  121. {
  122. echo "Nie udało się wysłać pliku <strong>$plik_nazwa</strong> na serwer";
  123. }
  124. }
  125. }
  126.  
  127. ?>
nospor
a pokaz kod html tego formularza
zolasty
  1. <form enctype="multipart/form-data" action='' method='POST'>
  2. <div class="tytul">Podstawowe dane:</div>
  3. <table align='center' width='100%' border='0'>
  4.  
  5. <tr>
  6. <td width='30%' class="text">Region:</td>
  7. <td width='30%' class="text">Powiat:</td>
  8. <td width='30%' class="text">Miasto:</td>
  9. </tr>
  10.  
  11. //niepotrzebny kod wycięty
  12.  
  13. <br/>
  14. <br/>
  15.  
  16. <div class="tytul">Opis:</div>
  17. <TEXTAREA NAME="opis" COLS="68" ROWS="10"></TEXTAREA>
  18. <br/>
  19. <br/>
  20.  
  21. <div class="tytul">Dodaj zdjęcia:</div>
  22.  
  23. <tr>
  24. <td>
  25.  
  26. Wgraj zdjęcie: <input name="plik" type="file" />
  27.  
  28. </td>
  29. </tr>
  30. <tr>
  31. <td>
  32.  
  33. Wgraj zdjęcie: <input name="plik2" type="file" />
  34.  
  35. </td>
  36. </tr>
  37.  
  38.  
  39. <p align='center'>
  40. <input type="text" name="submit" value="1" style="visibility:hidden" />
  41. <input type='submit' value='Dodaj ogłoszenie'/>
  42. </p>
  43. </form>
nospor
  1. print_r($_POST);
  2. print_r($_FILES);

Co ci wyswietla?
zolasty
Bardzo dziwne smile.gif
Teraz działa dobrze, a nic w kodzie nie zmieniałem.

Array ( [region] => mazowieckie [powiat] => Warszawski [miasto] => Warszawa [ulica] => Jakastam [powierzchnia] => 23 [cena] => 250000 [licz_pokoi] => 3 [licz_pieter] => 3 [rok_budowy] => 2008 [material] => cegła [droga] => asfaltowa [kanalizacja] => miejska [woda] => jest [prad] => jest [gaz] => jest [sila] => jest [opis] => dczdzdsdd [submit] => 1 ) Array ( [plik] => Array ( [name] => DSCF6147.JPG [type] => image/jpeg [tmp_name] => /tmp/phpcCF6CD [error] => 0 [size] => 584942 ) [plik2] => Array ( [name] => DSCF6148.JPG [type] => image/jpeg [tmp_name] => /tmp/phpWlV3Fq [error] => 0 [size] => 576470 ) ) Ogloszenie dodane. Plik: 14 o rozmiarze 584942 bajtów został� przesłany na serwer! Plik2: 15 o rozmiarze 576470 bajtów został przesł�any na serwer!

Ale dzięki, mam nadzieje że będzie działać cały czas smile.gif
nospor
Cytat
Teraz działa dobrze, a nic w kodzie nie zmieniałem.
Moze dopiero teraz wcisnales CTRL+S lub po prostu nie odswierzyles strony formularza winksmiley.jpg
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.