Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Upload plików na serwer HELP!
Forum PHP.pl > Forum > PHP
Marecki669
Witam,
mam problem otóż mam plik new_post.php:

  1. <?php
  2. include (".../include/settings.admin.php");
  3. if (isset($_POST['dodaj_news'])) { echo dodaj_news();}
  4.  
  5. ?>
  6.  
  7. <div id="contentText">
  8. <div id="content">
  9. <link rel="stylesheet" href="style/forms.css" type="text/css" media="screen" />
  10. </head>
  11.  
  12. <p><strong>Dodawnaie Newsa</strong><br /><br /></p>
  13.  
  14. <form method="post" id="myForm" action="new_post.php">
  15.  
  16. <p>
  17. <label>Tytuł: </label><input name="title" type="text" onfocus="doSomething()" />
  18. <br class="clearAll" /><br />
  19. </p>
  20.  
  21. <p>
  22. <label>Treść: </label><textarea name="messages" cols="60" rows="10"></textarea>
  23. <br class="clearAll" /><br />
  24. </p>
  25.  
  26. <input name="plik" type="file" />
  27.  
  28.  
  29. <p><input type="submit" value="Dodaj" name="dodaj_news" /></p>
  30.  
  31. </form>
  32.  


i plik settings_amin.php:

  1. <?php
  2.  
  3. include("settings.php");
  4. include("admin.sessions.php");
  5.  
  6. function dodaj_news() {
  7.  
  8. $plik_tmp = $_FILES['plik']['tmp_name'];
  9. $plik_nazwa = $_FILES['plik']['name'];
  10. $plik_rozmiar = $_FILES['plik']['size'];
  11. $folder="/upload/";
  12. $path_file = $folder.$plik_nazwa ;
  13.  
  14. if(is_uploaded_file($plik_tmp)) {
  15. move_uploaded_file($plik_tmp, "/upload/$plik_nazwa");
  16.  
  17. echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze
  18. <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
  19.  
  20. mysql_query("insert into news values('','".$_POST['title']."', '".$_POST['messages']."', now(), '$path_file')") or die (mysql_error());
  21. echo "<a href=index.php>Wracaj ...";
  22. }else{
  23. echo 'Nie udało się przesłać pliku'; }
  24. }
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31. ?>


Prosił bym o zerknięcie na kod od wgrywania plików na serwer, nie wiem dlaczego ale nie działa cały czas piszę Nie udało się przesłać pliku.
Proszę o pomoc z góry dzięki
Sephirus
na pierwszy rzut oka widać, że o czymś zapomniałeś. Aby przesłać plik w ten sposób form musi mieć atrybut enctype="multipart/form-data"
Marecki669
Faktycznie dzięki a teraz mam jeszcze jedno pytanie wyskakuje teraz błąd:

  1. Warning: move_uploaded_file(/upload/Tulips.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/ospwilki/public_html/include/settings.admin.php on line 15
  2.  
  3. Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpwl5YOG' to '/upload/Tulips.jpg' in /home/ospwilki/public_html/include/settings.admin.php on line 15


pewnie chodzi o folder zapisu. Jeżeli plik z którego wgrywam czyli new_post.php znajduję się w katalogu admin/new_post.php a plik settings_admin.php w include/settings_admin.php to w którym katalogu powinienem utworzyć katalog /upload/ ?
Sephirus
To gdzie go utworzysz to już od Ciebie jedynie zależy. Jeśli to ma być dostępne przez WWW to najlepiej żeby było w głównym folderze www. podaj jedynie bezwzględną ścieżkę do tego katalogu.
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.