[PHP][Problem] Upload więcej niż jednego pliku

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
trucker
Posty: 1
Rejestracja: pt sty 27, 2006 7:29 pm

[PHP][Problem] Upload więcej niż jednego pliku

Post autor: trucker »

napisalem skrypt, ktory uploaduje wiecej niz jeden plik, tzn jeszcze tgo nie robi bo cos nie dziala.
Na chwile obecna skrypt umie zapisac w bazie danych wiecej niz 1 opis i nazwe firmy .
oto skrypt dodaj.htm

Kod: Zaznacz cały

<div align="center">
  <center>
  <br>
  <br>
  <br>
  <form name="form1" method="post" action="sprawdz.php" enctype="multipart/form-data">
    

  <table border="0" width="403" cellspacing="0" cellpadding="0">
    <tr>
      <td valign="middle" class="form" ><strong>Opis zdjęcia:
        </strong>
        <p>
        <p class="style1">Jego treść opublikowana będzie pod obrazkiem.</td>
  
      <td align="center" class="form">
        <p align="center">
          <textarea rows="3" name="image_opis[]" cols="30" id="item_opis_1" type"text" ></textarea>
        </td>
    </tr>

    <tr>
      <td class="form2"><strong>Nazwa firmy:</strong></td>
      <td align="center" class="form2"><input type="text" name="image_uzytkownik[]" id="image_uzytkownik_1" size="27">
    
      </td>
    </tr>
	<tr>
      <td class="form2"><strong>zdjecie:</strong></td>
      <td align="center" class="form2"><input type="file" name="image_filename[]" id="image_filename_1" size="27">
    
      </td>
    </tr>
	<tr>
      <td valign="middle" class="form" ><strong>Opis zdjęcia:
        </strong>
        <p>
        <p class="style1">Jego treść opublikowana będzie pod obrazkiem.</td>
  
      <td align="center" class="form">
        <p align="center">
          <textarea rows="3" name="image_opis[]" cols="30" id="item_opis_2" type"text" ></textarea>
        </td>
    </tr>

    <tr>
      <td class="form2"><strong>zdjecie:</strong></td>
      <td align="center" class="form2"><input type="file" name="image_filename[]" id="image_filename_2" size="27">
    
      </td>
    </tr>    
      </td>
    </tr>
    <tr>
      <td height="48" colspan="2" align="right"><input type="submit" name="Submit" value="Wyślij"> 
        <input type="reset" name="Submit2" value="Kasuj"></td>
      </tr>
    <tr align="center">
      <td height="33" colspan="2" class="form2" align="center">Przyjmowane są zdjęcia w formacie: GIF, JPG/JPEG, PNG, których waga nie przekrasza <strong>400 kb</strong> </td>
      </tr>
    <tr>
      <td width="387" height="53"></td>
      <td width="287" height="53"></td>
    </tr>
  </table>
    </form>
  </center>
</div>
a to skrypt uploadujeacy wszystko

[php]
<?php
......


//udostepnianie zmiennych
for($i = 0; $i < count($_FILES['image_filename']); $i++){
$image_opis = $_POST['image_opis'][$i];
$image_uzytkownik = $_POST['image_uzytkownik'][$i];
$image_tempname = $_FILES['image_filename'][$i]['name'];
$today = date("Y-m-d");



//umieszczenie obrazu i sprzwdzenie jego formatu
//$ImageDir = "http://etrucker.pl/2/images/";

$ImageName = $image_tempname;
if (move_uploaded_file($_FILES['image_filename']['tmp_name'], $ImageName))
{
//pobranie informacji na temat umieszczonego obrzau

list($width, $height, $type, $attr) = getimagesize($ImageName);

switch ($type) {
case 1:
$ext = ".gif";
break;
case 2:
$ext = ".jpg";
break;
case 3:
$ext = ".png";
break;
default:
echo "Zle rozszerzenie pliku";
}

//wstawienie informacji do tabeli images
$insert = "INSERT INTO images (image_opis, image_uzytkownik, image_data)
VALUES
('$image_opis', '$image_uzytkownik', '$today')";
$insertresults = mysql_query($insert)
or die(mysql_error());

$lastpicid = mysql_insert_id();
/* $newfilename = $ImageDir . $lastpicid . $ext;
rename($ImageName, $newfilename);
*/
}

}
?>
<html>
<head>
<title>Gotowe</title>
</head>
<body>
Gotowe
</body>
</html>

[/php]
czy ktos moze mi pomoc napisac petle ktora bedzie uploadowala wiecej niz jeden plik wraz z jego opisem ??
jac3k
Posty: 4
Rejestracja: ndz lut 05, 2006 10:28 pm
Kontakt:

Re: [PHP][Problem] Upload więcej niż jednego pliku

Post autor: jac3k »

sprobuj move_uploaded_file ( $_FILES.. .., "c:\sztywna_sciezka.dat");

na windowsie apache ma problemy ze sciezkami, czy to jest katalog wirtualny na innym dysku?

zajrzyj tu: http://bg.php.net/features.file-upload
$_FILES['userfile']['name']

The original name of the file on the client machine.
$_FILES['userfile']['type']

The mime type of the file, if the browser provided this information. An example would be "image/gif".
$_FILES['userfile']['size']

The size, in bytes, of the uploaded file.
$_FILES['userfile']['tmp_name']

The temporary filename of the file in which the uploaded file was stored on the server.
$_FILES['userfile']['error']

The error code associated with this file upload. This element was added in PHP 4.2.0
ODPOWIEDZ