Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Upload zdjęć, error
Forum PHP.pl > Forum > Przedszkole
Gość
Wyskakuje mi błąd przy uploudzie zdjęć:
Warning: unlink(C:\xampp\tmp\php6044.tmp) [function.unlink]: No such file or directory in...
please pomóżcie

  1. $fileSize = $_FILES["fileField"]["size"];
  2. $fileType = $_FILES["fileField"]["type"];
  3. $fileTmpLoc = $_FILES["fileField"]["tmp_name"];
  4. $kaboom = explode(".", $productName);
  5. $fileExt = end($kaboom);
  6. if($fileSize > 5242880) { // i
  7. echo "ERROR: Your file was larger than 5 Megabytes in size.";
  8. unlink($fileTmpLoc)
  9. exit();}
  10.  
  11. $moveResult = move_uploaded_file($fileTmpLoc, "../inventory_images/$productName");
  12. if ($moveResult != true) {
  13. echo "ERROR: File not uploaded. Try again.";
  14. unlink($fileTmpLoc); // Remove the uploaded file from the PHP temp folder
  15. exit();
  16. }
  17. unlink($fileTmpLoc);
csharp
unlink($fileTmpLoc) "zabija" Ci coś.
w Twoim przypadku próbuje usunąć plik zanim go jeszcze załadowało.
spokoloko123
A po co chcesz to usunąć? o.0 To jest folder tymczasowy, zanim zaczniesz pisać, że masz problem to wejdź na dysk i sprawdź czy plik który chcesz usunąć wgl istnieje ok? thumbsdownsmileyanim.gif


Cytat(csharp @ 5.08.2012, 11:42:19 ) *
unlink($fileTmpLoc) "zabija" Ci coś.
w Twoim przypadku próbuje usunąć plik zanim go jeszcze załadowało.


Bzdura.
Gość
usunołem unlink($fileTmpLoc); dodaje plik ale bez typu (jpg, png, gif)
spokoloko123
usunąłeś nie usunołeś, a ten "typ" to rozszerzenie. Czego oczekujesz? Że wiemy skąd się wzięła zmienna $productName?
Gość
Cytat(spokoloko123 @ 5.08.2012, 11:00:37 ) *
usunąłeś nie usunołeś, a ten "typ" to rozszerzenie. Czego oczekujesz? Że wiemy skąd się wzięła zmienna $productName?

$productName wziął się z formularza , cały kod:
  1. if(isset($_POST));
  2. $productName=isset($_POST['productname']) ? $_POST["productname"] : "";
  3. $cena=isset($_POST['cena']) ? $_POST["cena"] : "";
  4. $opis=isset($_POST['opis']) ? $_POST["opis"] : "";
  5. $producent=isset($_POST['producent']) ? $_POST["producent"] : "";
  6. $numer_katalogowy=isset($_POST['numer_katalogowy']) ? $_POST["numer_katalogowy"] : "";
  7.  
  8. $productName= addslashes($productName);
  9. $cena= addslashes($cena);
  10. $opis= addslashes($opis);
  11. $producent= addslashes($producent);
  12. $numer_katalogowy= addslashes($numer_katalogowy);
  13. }
  14. if(empty($productName)) {
  15. echo 'brak wsystkich danych. <a href="inventry_list.php">powrót</a>';
  16.  
  17. }
  18. else {
  19. include "../storesript/conecttomysql.php";
  20. $sql= mysql_query("SELECT id FROM products WHERE productname='$productName' LIMIT 1");
  21. $productMatch=mysql_num_rows($sql);
  22. if ($productMatch >0) {
  23. echo "Podwójne ID <a href='inventry_list.php'>powrót</a>"; exit;}
  24.  
  25. $sql=mysql_query("INSERT INTO products (productname,cena,opis,producent,numer_katalogowy) VALUES( '$productName', '$cena', '$opis', '$producent', '$numer_katalogowy')") or die(mysql_error());
  26. if($sql) {
  27. echo "zostało dodane <a href='inventry_list.php'>powrót</a>";
  28.  
  29. } else {
  30. echo "produkt nie został dodany <a href='inventry_list.php'>powrót</a>";
  31. }
  32. $fileSize = $_FILES["fileField"]["size"];
  33. $fileType = $_FILES["fileField"]["type"];
  34. $fileTmpLoc = $_FILES["fileField"]["tmp_name"];
  35. $kaboom = explode(".", $productName);
  36. $fileExt = end($kaboom);
  37. if($fileSize > 5242880) { // if file size is larger than 5 Megabytes
  38. echo "ERROR: Your file was larger than 5 Megabytes in size."; // Remove the uploaded file from the PHP temp folder
  39. exit();}
  40. /*else if (!preg_match("/.(gif|jpg|png|jpeg)$/i", $productName) ) {
  41.   // This condition is only if you wish to allow uploading of specific file types
  42.   echo "ERROR: Your image was not .gif, .jpg, or .png.";
  43.   unlink($fileTmpLoc); // Remove the uploaded file from the PHP temp folder
  44.   exit();
  45. }*/
  46. $moveResult = move_uploaded_file($fileTmpLoc, "../inventory_images/$productName");
  47. // Check to make sure the move result is true before continuing
  48. if ($moveResult != true) {
  49. echo "ERROR: File not uploaded. Try again.";
  50. // Remove the uploaded file from the PHP temp folder
  51. exit();
  52. }
  53.  
  54.  
  55.  
  56. }
spokoloko123
W takim razie jeśli zapisujesz pod nazwą z formularza (pomijając to, ze nie przygotowujesz bezpiecznej nazwy pliku) jeśli nie podano w nim rozszerzenia to nie zapisze z rozszerzeniem! Człowieku myśl... musisz zmienić linie:
  1. $moveResult = move_uploaded_file($fileTmpLoc, "../inventory_images/$productName");

Tak aby jeszcze dodać rozszerzenie. RTFM!
  1. list($width, $height, $type, $attr) = getimagesize('http://static.php.net/www.php.net/images/php.gif');

dla $type:
1 = GIF,
2 = JPG,
3 = PNG,
4 = SWF,
5 = PSD,
6 = BMP,
7 = TIFF(orden de bytes intel),
8 = TIFF(orden de bytes motorola),
9 = JPC,
10 = JP2,
11 = JPX,
12 = JB2,
13 = SWC,
14 = IFF,
15 = WBMP,
16 = XBM.
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.