Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]upload filmów przez formularz
Forum PHP.pl > Forum > Przedszkole
artkow00
Witam.

Korzystam z tak oto przygotowanego skryptu (wiem, że zapewne amatorka więc proszę darować sobie komentarze na temat poziomu zaawansowania moich php skills...)

  1. if
  2. (
  3. ( $_FILES['plikf']['type'] == "video/mp4" ) ||
  4. ( $_FILES['plikf']['type'] == "video/avi" ) ||
  5. ( $_FILES['plikf']['type'] == "video/MP4" ) ||
  6. ( $_FILES['plikf']['type'] == "video/AVI" ) ||
  7. ( $_FILES['plikf']['type'] == "video/MPEG" ) ||
  8. ( $_FILES['plikf']['type'] == "video/mpeg" )
  9. )
  10. {
  11. $tytulf = $_POST['tytulf'];
  12. $opisf = $_POST['opisf'];
  13. $plikf = $_POST['plikf'];
  14. $plikf_tmp = $_FILES['plikf']['tmp_name'];
  15. $plikf_nazwa = $_FILES['plikf']['name'];
  16. $plikf_rozmiar = $_FILES['plikf']['size'];
  17. if ($plikf_rozmiar <= 51200) {
  18. if(is_uploaded_file($plikf_tmp)) {
  19. move_uploaded_file($plikf_tmp, "../uploads/movies/".$user_data['id']."_$plikf_nazwa");
  20. echo "<br /><br /><span class='szary'>Film o nazwie: <strong style='color:#333;'>$plikf_nazwa</strong> został wgrany do Twojego profilu!</span>";
  21. }
  22. }
  23. else {echo "<br /><br /><span class='szary'>Film jest zbyt duży. Możesz wgrać tylko filmy poniżej 50MB!</span>";}
  24. }
  25. else {echo "<br /><br /><span class='szary'>Wybrałeś niepoprawny format pliku video!</span>";}


No i generalnie powinno sprawdzać format -> jeśli dobry to sprawdzać rozmiar -> jeśli mniejszy niż 50MB to uploadować.

Dodam, że dla zdjęć tego typu konstrukcja działa jak należy.

Usunąłem tutaj fragment dodający plik do bazy, bo jest on nieistotny z punktu widzenia problemu. Podczas uploadu najpierw wyświetla echo o niepoprawnym formacie, a później echo o za dużym rozmiarze. Dodaję MP4 2,08MB
nospor
Skoro wyswietla ci sie niepoprawny format, to moze sprawdzilbys tak na wszelki wypadek jaki format sle ci formularz, nie sadzisz??

var_dump($_FILES['plikf']['type']);

ps: 51200 to jest 50KB a nie 50MB. wiec jak slesz plik o rozmiarze 2 MB to niby jakim cudem ma ci przejsc ten warunek?
artkow00
Cytat(nospor @ 26.11.2013, 13:20:46 ) *
nie sadzisz??


A po co ta ironia w głosie...?

Wypluwa mi string(9) "video/mp4" - nie do końca wiem czy to dobrze.. tongue.gif

Masz rację zły rozmiar podałem, ale to nie zmienia faktu, że format się nie zgadza.

JESZCZE JEDNO:

Przelicznik rozmiaru podajemy w b czy B??
nospor
Kod co tu podales odpalasz tylko i wylacznie po wyslaniu formularza?
Jesli tak, to cos krecisz, bo format sie zgadza z tym co sprawdzasz, wiec nie ma prawa ci walic takim bledem
Jesli nie, czyli np. kod ten odpalany jest tez przed wyslaniem forma, no to dosc oczywiste, ze format sie nie zgadza, skoro jeszcze nic nie poszlo z forma

ps: ironia? To nie byla ironia, a zaznaczenie dosc oczywistego faktu, ktory sam w pierwszej kolejnosci powinienes byl sprawdzic
artkow00
No dobra nospor masz rację - powinienem sprawdzić to sam. Nie wiem dlaczego przejściowo pluje tym komunikatem, bo po zmianie limitu rozmiaru wszystko ładnie śmiga. Dodaje do bazy i na serwer. Także format również się zgadza. Dzięki
vermis
Cytat(artkow00 @ 26.11.2013, 13:27:39 ) *
Przelicznik rozmiaru podajemy w b czy B??


w B
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-2024 Invision Power Services, Inc.