Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dodawanie wielu plików z jednego formularza
Forum PHP.pl > Forum > Przedszkole
Neojawor
chcę dodać z jednego formularza 12 plików (zdjęć) i oczywiście coś mi nie działa dry.gif .
Algorytm mam taki:
robię array nazw plików, nazw tymczasowych, i opisów, a później zapisuję pliki na serwer, a ścieżki do rekordów w bazie, tak jakbym to robił z jednym plikiem, tylko robię to na pętli.

Oto kod (pewnie dało by się krócej, ale póki co, to się uczę):
  1. <?php
  2. $data = $_POST['data'];
  3. $tytul = $_POST['tytul'];
  4. $tytul = htmlspecialchars( $tytul );
  5. $opis = $_POST['opis'];
  6. $opis = str_replace("n", "<br>", $opis );
  7. $opis = htmlspecialchars( $opis );
  8. @$ses_id=mysql_connect("mysql-jawnet","user","haslo");
  9. if(!bd)
  10. {echo "<br>błąd przy łączeniu z bazą danych. Proszę spróbować ponownie później.";
  11.  
  12. /*
  13. function getDateForMysqlDateField()
  14. {
  15.  $date = getDate();
  16.  foreach($date as $item=>$value)
  17.  {
  18.  if ($value < 10)
  19.  $date[$item] = "0".$value;
  20.  }
  21.  return $date['year']."-".$date['mon']."-".$date['mday'];
  22.  }
  23. $data = getDateForMysqlDateField();
  24. */
  25.  
  26. mysql_select_db("ac_238", $ses_id);
  27. $zapytanie = "insert into z_zycia ( tytul, opis, data ) values ('$tytul', '$opis', '$data')";
  28. $rezultat = mysql_query( $zapytanie, $ses_id);
  29. if( !$rezultat )
  30. {
  31. echo"<br><br><b><center><h1>Rekord nie został dodany!!!</h1></center></b>";
  32. }
  33. else
  34. {
  35. echo '<br><br><b><center><h1>Pozycja została dodana do owydarzeń</h1></center></b>';
  36. echo 'następujące pliki zostały dodane:<br>';
  37. $zapytanie = "SELECT id FROM z_zycia WHERE tytul ='$tytul' AND opis='$opis' AND data='$data' ";
  38. $rezultat = mysql_query( $zapytanie, $ses_id);
  39. $wiersz = mysql_fetch_array($rezultat);
  40. $id = $wiersz['id'];
  41.  
  42. $fota1 = $_FILES['fota1']['name'];
  43. $fota2 = $_FILES['fota2']['name'];
  44. $fota3 = $_FILES['fota3']['name'];
  45. $fota4 = $_FILES['fota4']['name'];
  46. $fota5 = $_FILES['fota5']['name'];
  47. $fota6 = $_FILES['fota6']['name'];
  48. $fota7 = $_FILES['fota7']['name'];
  49. $fota8 = $_FILES['fota8']['name'];
  50. $fota9 = $_FILES['fota9']['name'];
  51. $fota10 = $_FILES['fota10']['name'];
  52. $fota11 = $_FILES['fota11']['name'];
  53. $fota12 = $_FILES['fota12']['name'];
  54. $fota_tmp1 = $_FILES['fota1']['tmp_name'];
  55. $fota_tmp2 = $_FILES['fota2']['tmp_name'];
  56. $fota_tmp3 = $_FILES['fota3']['tmp_name'];
  57. $fota_tmp4 = $_FILES['fota4']['tmp_name'];
  58. $fota_tmp5 = $_FILES['fota5']['tmp_name'];
  59. $fota_tmp6 = $_FILES['fota6']['tmp_name'];
  60. $fota_tmp7 = $_FILES['fota7']['tmp_name'];
  61. $fota_tmp8 = $_FILES['fota8']['tmp_name'];
  62. $fota_tmp9 = $_FILES['fota9']['tmp_name'];
  63. $fota_tmp10 = $_FILES['fota10']['tmp_name'];
  64. $fota_tmp11 = $_FILES['fota11']['tmp_name'];
  65. $fota_tmp12 = $_FILES['fota12']['tmp_name'];
  66.  
  67. $opis1 = $_POST['opis1'];
  68. $opis1 = str_replace("n", "<br>", $opis1 );
  69. $opis1 = htmlspecialchars( $opis1 );
  70. $opis2 = $_POST['opis2'];
  71. $opis2 = str_replace("n", "<br>", $opis2 );
  72. $opis2 = htmlspecialchars( $opis2 );
  73. $opis3 = $_POST['opis3'];
  74. $opis3 = str_replace("n", "<br>", $opis3 );
  75. $opis3 = htmlspecialchars( $opis3 );
  76. $opis4 = $_POST['opis4'];
  77. $opis4 = str_replace("n", "<br>", $opis4 );
  78. $opis4 = htmlspecialchars( $opis4 );
  79. $opis5 = $_POST['opis5'];
  80. $opis5 = str_replace("n", "<br>", $opis5 );
  81. $opis5 = htmlspecialchars( $opis5 );
  82. $opis6 = $_POST['opis6'];
  83. $opis6 = str_replace("n", "<br>", $opis6 );
  84. $opis6 = htmlspecialchars( $opis6 );
  85. $opis7 = $_POST['opis7'];
  86. $opis7 = str_replace("n", "<br>", $opis7 );
  87. $opis7 = htmlspecialchars( $opis7 );
  88. $opis8 = $_POST['opis8'];
  89. $opis8 = str_replace("n", "<br>", $opis8 );
  90. $opis8 = htmlspecialchars( $opis8 );
  91. $opis9 = $_POST['opis9'];
  92. $opis9 = str_replace("n", "<br>", $opis9 );
  93. $opis9 = htmlspecialchars( $opis9 );
  94. $opis10 = $_POST['opis10'];
  95. $opis10 = str_replace("n", "<br>", $opis10 );
  96. $opis10 = htmlspecialchars( $opis10 );
  97. $opis11 = $_POST['opis11'];
  98. $opis11 = str_replace("n", "<br>", $opis11 );
  99. $opis11 = htmlspecialchars( $opis11 );
  100. $opis12 = $_POST['opis12'];
  101. $opis12 = str_replace("n", "<br>", $opis12 );
  102. $opis12 = htmlspecialchars( $opis12 );
  103.  
  104. $foty = array( $fota1, $fota2, $fota3, $fota4, $fota5, $fota6, $fota7, $fota8, $fota9, $fota10, $fota11, $fota12 );
  105. $foty_tmp = array( $fota_tmp1, $fota_tmp2, $fota_tmp3, $fota_tmp4, $fota_tmp5, $fota_tmp6, $fota_tmp7, $fota_tmp8,
  106.  $fota_tmp9, $fota_tmp10, $fota_tmp11, $fota_tmp12 );
  107. $opisy = array( $opis1, $opis2, $opis3, $opis4, $opis5, $opis6, $opis7, $opis8, $opis9, $opis10, $opis11, $opis12 );
  108.  
  109. for( $i=0; $i < 12; $i++)
  110.  {
  111.  $fota = $foty['$i'];
  112.  $fota = explode( ".", $fota );
  113.  $rozszerzenie = $fota[1];
  114.  if( $rozszerzenie == "jpg" || $rozszerzenie == "gif" || $rozszerzenie == "JPG" || $rozszerzenie == "GIF" )
  115. {
  116. $a += $i;
  117. if( is_uploaded_file( $foty_tmp['$i'] ) )
  118.  {
  119.  $strUploadDir = "../../zdjeciaz/" . $foty['$i'];
  120.  if( move_uploaded_file( $foty_tmp['$i'], $strUploadDir ) )
  121. {
  122. echo "plik<b>'$foty['$i']'</b>został dodany<br>";
  123. $zapyt = "UPDATE z_zycia SET fota" . $a . "='$foty['$i']', opis" . $a . "='$opisy['$i'] WHERE id='$id' ";
  124. $rezult = mysql_query( $zapyt, $ses_id);
  125. }
  126.  else
  127. {
  128. echo 'pliku numer <b>' . $a . '</b> nie udało się dodać';
  129. }
  130. else
  131.  {
  132.  echo 'Wystąpił błąd podczas wysyłania pliku numer <b>' . $a . '</b> na serwer! ';
  133.  echo 'Proszę sprawdzić, czy plik nie przekracza rozmiaru 30 kB<br>';
  134.  }
  135. }
  136.  else
  137. {
  138. echo 'Plik numer <b>' . $a . '</b> ma niepoprawne rozszerzenie. Dodać można tylko obrazy typu jpg i gif<br>';
  139. }
  140.  }
  141. }
  142. ?>

wywala mi błąd:
Cytat
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /service/www/accounts/1000/knt_783/391/public_html/panel/noindex/add_z_zycia.php on line 122

i nie wiem co z tym zrobić, bo algorytm dodawania mam zerżnięty ze skryptu robiącego to z jednym plikiem i tam działa sadsmiley02.gif
ennics
  1. <?php
  2.  
  3. // pozamieniaj 
  4. $foty_tmp['$i']
  5. // na 
  6. $foty_tmp[$i]
  7.  
  8. ?>
Neojawor
wielkie dzięki ennics, już działa

ps. jakby ktoś chciał skorzystać ze skryptu, to tam zgubiony jest jeden "}"
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.