Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: bład przy move_uploaded_file
Forum PHP.pl > Forum > Przedszkole
Hpsi
Witajcie mam pewien bład przy copy: mianowicie:
  1. <?php
  2. $dir = 'icon/'.$_FILES['emot']['tmp_name'];
  3.  if(move_uploaded_file($_FILES['emot']['tmp_name'], $dir))
  4.  {
  5.  mysql_query(&#092;"INSERT INTO {$GLOBALS['table']['emotki']} VALUES(NULL, '{$_POST['wyraz']}', '{$dir}')\");  
  6.  }
  7. ?>

i nie chce mi uploadowac pliku :/

<input type="file" name="emot" value="emotek" /> => to jest unput z file
o enctype nie zapmnialem,

Bład:

Warning: move_uploaded_file(icon//tmp/phpAc19bZ): failed to open stream: No such file or directory in enigme/class/upload.php on line 10

Warning: move_uploaded_file(): Unable to move '/tmp/phpAc19bZ' to 'icon//tmp/phpAc19bZ' in enigme/class/upload.php on line 10
ennics
Kod
icon//tmp/phpAc19bZ
      ^----- za dużo o / lub brak katalogu questionmark.gif?
Hpsi
no niby powinno dzialac jak zrobilem zgodnie z kursem na php.pl

to mi wywalilo
:

Array
(
[emot] => Array
(
[name] => reklama_t.jpg
[type] => image/jpeg
[tmp_name] => /tmp/phpJSxRq9
[error] => 0
[size] => 12873
)

)
ennics
masz windows czy linux ? na jakiej wersji pracujesz ?
może chodzi o style separowania katalogów ? też miałem z tym problem i używam czegoś takiego:
  1. <?php
  2.  
  3. $dirname = dirname(__FILE__) . DIRECTORY_SEPARATOR;
  4. $dirname = ( PHP_OS == 'Linux' ? $dirname : str_replace( &#092;"\", \"/\", $dirname ));
  5.  
  6. ?>

zobacz też w php.ini jaką masz ścieżkę do katalogu /tmp

ps. zobacz w phpinfo.php jaką masz ścieżkę do upload_tmp_dir
Hpsi
i tak nie dziala, mam serwer linuxowski
ennics
Cytat
icon//tmp/phpAc19bZ
      ^----- nadal sądzę że błąd tkwi w tym miejscu ;]


zobacz
w tablicy pod adresem $_FILES['emot']['tmp_name'] znajduje się zmienna "/tmp/phpJSxRq9" następnie w kodzie podajesz
  1. <?php
  2.  
  3. $dir = 'icon/'.$_FILES['emot']['tmp_name'];
  4. // ...       ^----- niepotrzebny slash ?! jeden już jest w $_FILES['emot']['tmp_name']
  5.  
  6. ?>
Hpsi
  1. <?php
  2.  if( is_uploaded_file( $_FILES['emot']['tmp_name'] ) )
  3. {
  4. $strUploadDir = 'icon'.$_FILES['emot']['tmp_name'];
  5. if( move_uploaded_file( $_FILES['userfile']['tmp_name'], $strUploadDir ) )
  6. {
  7. echo 'Plik został pomyślnie uploadowany! <br />';
  8. mysql_query(&#092;"INSERT INTO {$GLOBALS['table']['emotki']} VALUES(NULL, '{$_POST['wyraz']}', '{$strUploadDir}')\");
  9. }
  10. else
  11. {
  12. echo 'Upload pliku nie powiódł się!';
  13.  
  14. }
  15. echo 'Dodatkowe informacje o uploadowanym pliku: <pre>' . print_r( $_FILES, true ) . '</pre>';
  16. }
  17. else
  18. {
  19. echo 'Wystąpił błąd podczas wysyłania pliku na serwer!';
  20. }
  21.  
  22.  
  23. ?>

POrzy takim kodzie, mi nie dziala to :/ wywala mi caly czas to samo ze nie moze zuploadowac :/
ennics
czy te katalogi istnieją, czy możesz wyświetlić ich relatywne ścieżki ?

/home/user/public_html/.../icon/tmp/phpAc19bZ
/tmp/phpAc19bZ
Hpsi
istnieje tylko icon/ i do niego powinno uploadowac
ennics
  1. <?php
  2.  
  3.  
  4. if( is_uploaded_file( $_FILES['emot']['tmp_name'] ) )
  5. {
  6. $strUploadDir = 'icon/'; // <--- w takim razie powinno być tylko icon/ bez /tmp/phpAc19bZ 
  7. if( move_uploaded_file( $_FILES['userfile']['tmp_name'], $strUploadDir ) )
  8. // ...
  9.  
  10. ?>
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.