Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Panel dodawania plików i ...
Forum PHP.pl > Forum > Przedszkole
Turson
Próbowałem stworzyć mini panel administracyjny dla mojej strony. Miał mieć on możliwość dodawania plików do skromnego downloadu:
upload pliku, dodanie odpowiedniej wzmianki (fwrite) do pliku PHP o nowym pliku (.rar).

Moje starania skończyły się na błędach"
Cytat
Warning: fopen(php) [function.fopen]: failed to open stream: Is a directory in /home/Turson/domains/turson.pl/public_html/acp.php on line 42

Warning: fwrite(): supplied argument is not a valid stream resource in /home/Turson/domains/turson.pl/public_html/acp.php on line 44

Warning: fclose(): supplied argument is not a valid stream resource in /home/Turson/domains/turson.pl/public_html/acp.php on line 45


Linijka 42:
  1. $filee = fopen($pliki.php, 'a+');

Linijka 44:
  1. '<li><a href="pliki_$plik_nazwa.php">$plik_name</a></li>');

Linijka 45:
  1. fclose($filee);


Całość kodu wygląda tak:
  1. <div>
  2. <table><form enctype="multipart/form-data" action="index.php" method="POST">
  3. <input type="hidden" name="MAX_FILE_SIZE" value="30000000" />
  4. <tr><td></td></tr><input name="plik" type="file" /></td></tr>
  5. <tr><td>Nazwa pliku<td><input type="text" name="plik_name" /></tr></td>
  6. </form>
  7. </div>
  8. </table>
  9.  
  10. <?php
  11. $plik_tmp = $_FILES['plik']['tmp_name'];
  12. $plik_nazwa = $_FILES['plik']['name'];
  13. $plik_rozmiar = $_FILES['plik']['size'];
  14. $plik_name = $_FILES['plik']['name'];
  15.  
  16. if(is_uploaded_file($plik_tmp)) {
  17. move_uploaded_file($plik_tmp, "download/$plik_nazwa");
  18. echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze
  19. <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer! Link do pliku: <strong>http://turson.pl/download/$plik_nazwa</strong>";
  20. }
  21.  
  22.  
  23. $filee = fopen($pliki.php, 'a+');
  24. fwrite($filee,
  25. '<li><a href="pliki_$plik_nazwa.php">$plik_name</a></li>');
  26. fclose($filee);
  27. ?>
  28. <form enctype="multipart/form-data" action="acp.php" method="POST">
  29. <input type="submit" value="Akceptuj" />
  30. </form>

Pliki.php ma nadany chmod 777. Dodam ze download dziala, ale ja chce zeby uploadowalo, tworzylo nowy plik i zmienialo inny jednym "submitem".

Pozdrawiam sadsmiley02.gif
Fifi209
Przypatrz się...

  1. $filee = fopen($pliki.php, 'a+');


Czego tu brakuje...
Turson
Oświecisz mnie?
Wicepsik
Łączenie stringów i zmiennych to podstawy.
Pawel_W
Cytat(Wicepsik @ 27.08.2009, 13:51:45 ) *
Łączenie stringów i zmiennych to podstawy.

~Wicepsik, zamiast nabijać posty to może byś mu pomógł? Nie każdy jest taki zdolny jak ty haha.gif

co do skryptu, to poczytaj o różnicach między ' a " bo tutaj masz kolejny błąd:

  1. '<li><a href="pliki_$plik_nazwa.php">$plik_name</a></li>'


lepiej wyglądałby to tak:

  1. <?php
  2. $plik_tmp = $_FILES['plik']['tmp_name'];
  3. $plik_nazwa = $_FILES['plik']['name'];
  4. $plik_rozmiar = $_FILES['plik']['size'];
  5. $plik_name = $_FILES['plik']['name'];
  6.  
  7. if(is_uploaded_file($plik_tmp)) {
  8. move_uploaded_file($plik_tmp, "download/".$plik_nazwa);
  9. echo "Plik: <strong>".$plik_nazwa."</strong> o rozmiarze
  10. <strong>".$plik_rozmiar bajtów."</strong> został przesłany na serwer! Link do pliku: <strong>http://turson.pl/download/".$plik_nazwa."</strong>";
  11. }
  12.  
  13.  
  14. $filee = fopen($pliki.php, 'a+');
  15. $do_zapisu = '<li><a href="pliki_'.$plik_nazwa.'.php">'.$plik_name.'</a></li>';
  16. fwrite($filee,$do_zapisu);
  17. fclose($filee);
  18. ?>
Fifi209
~Pawel
Zejdź z Wicepsika ;-)

Zrobiłeś błędy i na to co ja wypomniałem nie zwróciłeś uwagi...

Poza tym:
  1. echo "Plik: <strong>".$plik_nazwa."</strong> o rozmiarze
  2. <strong>".$plik_rozmiar bajtów."
  3. </strong> został przesłany na serwer! Link do pliku: <strong>http://turson.pl/download/".$plik_nazwa."</strong>";


I linijka, o której ja pisałem..

I jak zwracasz autorowi uwagę na stringi to używaj ' a nie " bo używanie " tak jak sam pokazałeś mija się z celem.
Pawel_W
chciałem poprawić to mi edit nie działa...
Wicepsik
Jeśli robi już upload plików to powinien wiedzieć jak się łączy stringi i zmienne.
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.