Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Upload plików MP3
slawo
post 30.10.2010, 14:49:55
Post #1





Grupa: Zarejestrowani
Postów: 184
Pomógł: 0
Dołączył: 11.01.2010
Skąd: Nowa Dęba

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


witam, mam taki kod do wrzucania plików na serwer...

  1. <title>Upload
  2. MP3</title>
  3.  
  4. <?php
  5.  
  6. if($_POST['submit']=="Upload") {
  7. if ($_FILES['file']['name'] != "") {
  8. if (($_FILES['file']['type'] == "audio/mpeg") || ($_FILES['file']['type'] == "application/force-download")) {
  9. if ($_FILES["file"]["size"] < 8097152) {
  10. move_uploaded_file($_FILES["file"]["tmp_name"], "mp3/" . $_FILES["file"]["name"]);
  11. echo "Plik
  12. został pomyślnie wrzucony na serwer.";}
  13. else { echo "Maksymalny rozmiar pliku to 2MB!";}
  14. } else {
  15. echo "Proszę wrzucić mp3!";
  16. } else { echo "Proszę podać plik.";}
  17. }
  18. ?>
  19.  
  20. </head>
  21.  
  22. <body>
  23.  
  24. <p style="font-family: verdana;">Proszę wybrać plik mp3: </p>
  25.  
  26. <br />
  27.  
  28. <form action="<?php echo $PHP_SELF ?>" method="post" enctype="multipart/form-data">
  29.  
  30. <input type="file" name="file" size="40" />
  31.  
  32. <br /><br />
  33.  
  34. <input type="submit" name="submit" value="Upload" />
  35.  
  36. <br /><br />
  37.  
  38. <span style="font-family: verdana; font-size: 12px;">* Tylko mp3 ! Maksymalny rozmiar pliku to 2MB.</span>
  39.  
  40. </form>
  41.  
  42. </body>
  43.  
  44. </html>



myślicie, że jest bezpieczny? może macie lepiej napisane?


--------------------
zpodziemia.pl - największa baza dobrych nielegali w POLSCE!
Go to the top of the page
+Quote Post
neversoft
post 30.10.2010, 15:13:02
Post #2





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 24.07.2006

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


o jakim bezpieczeństwie piszesz? o co konkretnie Ci chodzi?


--------------------
Tutoriale Maya
Go to the top of the page
+Quote Post
slawo
post 30.10.2010, 18:05:39
Post #3





Grupa: Zarejestrowani
Postów: 184
Pomógł: 0
Dołączył: 11.01.2010
Skąd: Nowa Dęba

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


zeby nie dalo sie wrzucic jakiegos pliku niby z rozszerzeniem mp3 a to np. jakis 'trojan'


--------------------
zpodziemia.pl - największa baza dobrych nielegali w POLSCE!
Go to the top of the page
+Quote Post
kiler129
post 30.10.2010, 20:36:56
Post #4





Grupa: Zarejestrowani
Postów: 566
Pomógł: 35
Dołączył: 21.06.2006

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


Cytat(slawo @ 30.10.2010, 19:05:39 ) *
zeby nie dalo sie wrzucic jakiegos pliku niby z rozszerzeniem mp3 a to np. jakis 'trojan'


* Sprawdzaj mimetype
* Sprawdzaj nagłówek pliku mp3

Nie chce mi się używać za ciebie google - gotowcy jest multum winksmiley.jpg
Wysil sie a doradzimy.


--------------------
flexiCMS v2 [|||||||+--] 75% done
Go to the top of the page
+Quote Post
slawo
post 30.10.2010, 22:34:28
Post #5





Grupa: Zarejestrowani
Postów: 184
Pomógł: 0
Dołączył: 11.01.2010
Skąd: Nowa Dęba

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


czyli ten kod jest w miarę bezpieczny i nikt raczej nie wrzuci mi przez niego coś brzydkiego? tongue.gif


--------------------
zpodziemia.pl - największa baza dobrych nielegali w POLSCE!
Go to the top of the page
+Quote Post
Fifi209
post 30.10.2010, 22:48:35
Post #6





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Spokojnie, wrzuci Ci choćby skrypt php odpowiednio modyfikując nagłówki. ;]

mime_content_type - tak jak pisał kolega, sprawdzaj po stronie serwera a nie to co dostajesz od użytkownika.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
slawo
post 1.11.2010, 15:50:49
Post #7





Grupa: Zarejestrowani
Postów: 184
Pomógł: 0
Dołączył: 11.01.2010
Skąd: Nowa Dęba

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


  1. <?php
  2.  
  3. $typy_mime = array("audio/mpeg");
  4. $plik_mime = $_FILES['file']['type'];
  5.  
  6. if($_POST['submit']=="Upload") {
  7. if ($_FILES['file']['name'] != "") {
  8. if(in_array($plik_mime,$typy_mime)){
  9. if ($_FILES["file"]["size"] < 8097152) {
  10. move_uploaded_file($_FILES["file"]["tmp_name"], "mp3/" . $_FILES["file"]["name"]);
  11. echo "Plik
  12. został pomyślnie wrzucony na serwer.";}
  13. else { echo "Maksymalny rozmiar pliku to 2MB!";}
  14. } else {
  15. echo "Proszę wrzucić mp3!";
  16. } else { echo "Proszę podać plik.";}
  17. }
  18. ?>



napisałem coś takiego. jak wrzucam plik jpg to wywala błąd.. a jak mam plik nazwa.jpg, zmienię rozszerzenia na nazwa.mp3 to normalnie przechodzi;/ a nie powinno bo niby wpisalem to mime audio/mpeg. hhmm?


--------------------
zpodziemia.pl - największa baza dobrych nielegali w POLSCE!
Go to the top of the page
+Quote Post
Fifi209
post 1.11.2010, 15:57:54
Post #8





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(slawo @ 1.11.2010, 15:50:49 ) *
napisałem coś takiego. jak wrzucam plik jpg to wywala błąd.. a jak mam plik nazwa.jpg, zmienię rozszerzenia na nazwa.mp3 to normalnie przechodzi;/ a nie powinno bo niby wpisalem to mime audio/mpeg. hhmm?

Potrafisz czytać? Przestudiuj mojego posta...


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
slawo
post 1.11.2010, 16:21:30
Post #9





Grupa: Zarejestrowani
Postów: 184
Pomógł: 0
Dołączył: 11.01.2010
Skąd: Nowa Dęba

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


potrafie.. tylko nie bardzo rozumiem jak to zrobić :/

pewnie trzeba cos takiego:

  1. jesli mime_content_type( $_FILES['file']['type'] ) = audio/mpeg to przepusc dalej



dobrze mysle?


--------------------
zpodziemia.pl - największa baza dobrych nielegali w POLSCE!
Go to the top of the page
+Quote Post
Fifi209
post 1.11.2010, 16:24:06
Post #10





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


  1. jesli mime_content_type($_FILES["file"]["tmp_name"]) == audio/mpeg to przepusc dalej


Tak jak coś ^

Ciężko jest sprawdzić samemu? Zobaczyć przykłady? Poczytać komentarze?

Ten post edytował fifi209 1.11.2010, 16:30:32


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
slawo
post 1.11.2010, 16:27:55
Post #11





Grupa: Zarejestrowani
Postów: 184
Pomógł: 0
Dołączył: 11.01.2010
Skąd: Nowa Dęba

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


  1. if ((echo mime_content_type($_FILES['file']['name']) == "audio/mpeg")) {



cos takiego?


--------------------
zpodziemia.pl - największa baza dobrych nielegali w POLSCE!
Go to the top of the page
+Quote Post
Fifi209
post 1.11.2010, 16:31:25
Post #12





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


konkretniej jako parametr podajesz:
  1. $_FILES["file"]["tmp_name"]


Czyli:
  1. if (mime_content_type($_FILES["file"]["tmp_name"]) == 'audio/mpeg') {
  2. // zapisz
  3. }else{
  4. echo 'Oj ktoś łamie zabezpieczenia';
  5. }


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
slawo
post 2.11.2010, 20:25:10
Post #13





Grupa: Zarejestrowani
Postów: 184
Pomógł: 0
Dołączył: 11.01.2010
Skąd: Nowa Dęba

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


  1. echo mime_content_type('mp3/ggg.mp3');


sprawdzam sobie przykladowy plik mp3 i wywala mi text/plain

i dalej mi 'prawdziwych' plikow nie chce przepuszczac

i czy sprawdzam jpg, png czy jakis inny to pokazuje text/plain ;/

Ten post edytował slawo 2.11.2010, 20:33:05


--------------------
zpodziemia.pl - największa baza dobrych nielegali w POLSCE!
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 - 14:38