Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Upload plików
Forum PHP.pl > Forum > Przedszkole
ShadowD
Witam, właśnie poprawiam dość mocno "zrąbaną" stronę i mam problem z upload'em dokładniej podaje link do pliku i wysyłam, a po stronie servera nie ma żadnych oznak jego pobytu, funkcja error nic nie zwraca... haha.gif

  1. <?php
  2. if(!empty($_POST['nazwa']))
  3.   {  
  4.      $plik_tmp = $_FILES['plikee']['tmp_name'];
  5.      $plik_nazwa = $_FILES['plikee']['name'];
  6.      $plik_rozmiar = $_FILES['plikee']['size'];
  7.      
  8.      
  9.      if(is_uploaded_file($plik_tmp))
  10.      {  
  11.         move_uploaded_file($plik_tmp, "../images/upload/top$plik_nazwa");
  12.      }
  13.   }
  14.  
  15.  
  16. <form action="admin.php" enctype="multipart/form-data" method="post">
  17. <input name="MAX_FILE_SIZE" type="hidden" value="400000" />
  18.  
  19. <input style='margin-left:200px;' name='plikee' type='file' />";
  20.  
  21. <input style='margin-left:200px;' type='text' name='nazwa' />
  22. <input type='submit' value='Dodaj' /> </td>";
  23.  
  24. </form>
  25. ?>


Plik ma wielkość 60 000 bajtów, ja patrzę się na to już od godziny i nic nie widzę. Może ktos ma pojęcie dlaczego to nie działa? ;]
kefirek
Nie powinno byc tak
  1. <?php
  2. move_uploaded_file($plik_tmp, "../images/upload/top/".$plik_nazwa."");
  3. ?>
ShadowD
Ehh, to co napisałeś i tak niema znaczenia ponieważ if się nie spełnia (nie ma nazwy pliku anie kodu błędu)...
k_@_m_i_l
Daj przed if'em :
  1. <?php
  2. echo '<pre>';
  3. print_r($_POST);
  4. print_r($_FILES);
  5. echo '</pre>';
  6. ?>

i zobacz jakie zmienne zwraca:)
ShadowD
Kod
Array
(
     [MAX_FILE_SIZE] => 400000
     [plikee] => topcmsss2.jpg
     [nazwa] => fghjfjghjfhg
)
Array
(
)


Post ma dane ale dlaczego nie FILES?

Zmieniłem sposób wysyłania wiadomości na GET i nadal dane o pliku są trzymane w tablicy post a nie jak moim zdaniem powinny byś w FILES, czy wpływają na to ustawienia serwera?
k_@_m_i_l
Może to i głupie jest,ale dawaj
Kod
<input type="typ" />

w "" a nie w ' '.To tyle co wymyśliłem na ta chwile:)Za chwile coś dopisze tongue.gif

edit:
I wywal to
Kod
<input name="MAX_FILE_SIZE" type="hidden" value="400000" />

i zobacz czy wyśle czy nie smile.gif
ShadowD
Nie, nie to nic nie da... ;p

A dlatego jest w ' a nie w " ponieważ cały kod wygląda tak:

  1. <?php
  2. echo "<p>Edycja baner (top):<br>";
  3. echo "<table border='0px'>";
  4. echo "<tr>";
  5. ?>


I to jest oczywiście fragment z 800 lini z jednego pliku...
kefirek
A taki coś ci działa ?
  1. <?php
  2. if(isset($_FILES['plikee']) && isset($_POST['submit'])){  
  3. if(is_uploaded_file($_FILES['plikee']['tmp_name']))
  4. {  
  5. move_uploaded_file($_FILES['plikee']['tmp_name'], "../images/upload/top/".$_FILES['plikee']['tmp_name']."");
  6. }
  7. } else {
  8. echo "<form enctype='multipart/form-data' method='post'>
  9. <input style='margin-left:200px;' name='plikee' type='file' />
  10. <input style='margin-left:200px;' type='text' name='nazwa' />
  11. <input type='submit' name='submit' value='Dodaj' />
  12. </form>";
  13. }
  14. ?>
nexis
Powinno być tak:

  1. <?php
  2. if ( isset( $_FILES['plikee'] ) ) {  
  3.   if ( is_uploaded_file( $_FILES['plikee']['tmp_name'] ) ) {
  4.      $dir = '../images/upload/top/';  
  5.      move_uploaded_file($_FILES['plikee']['tmp_name'], $dir . $_FILES['plikee']['name']);
  6.   }
  7. }
  8. ?>
  9.  
  10. <form action="<?= $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data">
  11.   <input type="file" name="plikee" />
  12.   <input type="text" name="nazwa" />
  13.   <input type="submit" value="Dodaj" />
  14. </form>
ShadowD
A więc sprawa wygląda tak:

- Wszystkie kody działają poprawnie
- Plik który edytuje jest niezbyt poprawny w gdzieś się znajdują dziwne zmienne które wszystko podmieniają

Szkoda, że dopiero teraz się zorientowałem, dziękuję wszystkim za naprowadzenie mnie na dobra drogę... 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.