Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Własny, bardzo prosty hosting plików
Sniper512
post 6.01.2011, 20:41:01
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 30.12.2008

Ostrzeżenie: (0%)
-----


Witam. Napisałem bardzo prosty skrypcik do wysyłania plików do własnego katalogu:

  1. <?php
  2. echo '<?xml version="1.0" encoding="iso-8859-2"?>';
  3. ?>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
  5. transitional.dtd">
  6. <html>
  7. <head>
  8. <meta http-equiv="Content-type" content="text/html; charset=windows-1250" />
  9. <title>Upload</title>
  10. </head>
  11. <body>
  12.  
  13. <div>
  14. <form enctype="multipart/form-data" action="index.php" method="POST">
  15. <input type="hidden" name="MAX_FILE_SIZE" value="3072000" />
  16. <input name="plik" type="file" />
  17. <input type="submit" value="Wyślij plik" />
  18. </form>
  19. </div>
  20.  
  21. <?php
  22. $plik_tmp = $_FILES['plik']['tmp_name'];
  23. $plik_nazwa = $_FILES['plik']['name'];
  24. $plik_rozmiar = $_FILES['plik']['size'];
  25.  
  26. if(is_uploaded_file($plik_tmp)) {
  27. move_uploaded_file($plik_tmp, "upload/$plik_nazwa");
  28. echo "http://ADRES_MOJEGO_SERWERA/host/$plik_nazwa";
  29. }
  30. ?>
  31. </body>
  32. </html>


Nadałem mu oczywiście Chmody etc, lecz gdy plik jest już wysłany, serwer go nie może odnaleźć, chociaż znajduje się na ftp.
Nie mam do niego dostępu.

Co mogę poprawić w skrypcie?

A i mam pytanie, co zrobić aby po zakończonym uploadzie gotowy link był w polu tekstowym, z włączonym atrybutem, że jak klika się w to pole, automatycznie zaznacza ten link.

Go to the top of the page
+Quote Post
CuteOne
post 6.01.2011, 21:32:54
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

Ostrzeżenie: (0%)
-----


"host/nazwa_pliku" to nie to samo co "upload/nazwa_pliku"...
Go to the top of the page
+Quote Post
nekomata
post 7.01.2011, 03:40:49
Post #3





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

Ostrzeżenie: (0%)
-----


dokładnie tak jak wyżej i jeszcze dodam że masz błąd w
  1. move_uploaded_file($plik_tmp, "upload/$plik_nazwa");
to porostu plik ci nazwie "$plik_nazwa" a nie to co masz w zmiennej.Aby plik miał nazwę tak jak oryginalny plik musisz zamienić linijkę powyższą na
  1. move_uploaded_file($plik_tmp, "upload/".$plik_nazwa);
to samo przy echu.no i pozatym jak wszystko wrzucasz do jednego katalogu.mógłbyś dawać jakieś foldery albo ID np.. nowy folder jeśli poprzednia data jest o 10 minut przedawniona... w ten sposób nikt ci plików pustymi notatnikami z nazwami jak duże pliki nie podmieni.Beware of the trolls.I użytkownik zawsze podaje złe/szkodliwe dane,pamiętaj o tym.
Go to the top of the page
+Quote Post
Sniper512
post 8.01.2011, 12:42:13
Post #4





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 30.12.2008

Ostrzeżenie: (0%)
-----


Dziękuje. Teraz wszystko mi działa.

A co poprawić w tej linijce, by po kliknięciu w pole tekstowe, automatycznie zaznaczało cały tekst?

  1. echo "<input id='txtfld' readonly='readonly' class='input_field' onClick='SelectAll('txtfld');' type='text' style='width: 300px;' value='/host/upload/$plik_nazwa' />";



Czytałem trochę o tym skrypcie:

  1. <script type="text/javascript">
  2. function SelectAll(id)
  3. {
  4. document.getElementById(id).focus();
  5. document.getElementById(id).select();
  6. }
  7.  
  8. Textarea:<br>
  9. <textarea rows="3" id="txtarea" onClick="SelectAll('txtarea');" style="width:200px" >This text you can select all by clicking here </textarea>
  10.  
  11. Input TextBox:<br>
  12. <input type="text" id="txtfld" onClick="SelectAll('txtfld');" style="width:200px" value = "This text you can select all" />


Ten post edytował Sniper512 8.01.2011, 13:37:57
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 04:04