Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Problem z uploadem mp3
Forum PHP.pl > Forum > Przedszkole
sapper_pierwszy
Witam.

Mam skrypt wysyłający mp3 na serwer. Problem polega na tym że na jednym komputerze wysyła bez problemu a na innym ładuje się bardzo długo i zwiesza, albo w ogóle nic się nie dzieje. Dodam jeszcze że wcześniej na próbnym hostingu działało ok. Kiedy przeniosłem stronę na 1&1 to zaczęło się psuć.

Skrypt:
  1. if($_POST['action'] == 'add'){
  2. $sprawdz_tytul = trim($_POST['tytul']);
  3. if(!empty($sprawdz_tytul) and !empty($_FILES['plik']['name'])){
  4.  
  5. if($_FILES['plik']['size'] < '10485760'){
  6. $plik = upload_music($_FILES['plik'],"audio_files/");
  7.  
  8. $rodz = (!empty($_POST['rodzaj'])) ? implode(";",$_POST['rodzaj']) : '';
  9. $gat = (!empty($_POST['gatunek'])) ? implode(";",$_POST['gatunek']) : '';
  10.  
  11. $baza = "INSERT INTO ".DB_TBL_PREFIX."utwory (id,data,id_user,plik,tytul,gatunek,rodzaj,opis,komentarze)
  12. VALUES ('',CURDATE(),'".$_SESSION['user_id']."','".$plik."','".htmlspecialchars($_POST['tytul'])."','".$gat."','".$rodz."','".htmlspecialchars($_POST['opis'])."','".$_POST['komentarze']."')";
  13. if($plik){
  14. $komunikat = "Plik wysłany poprawnie".'<br />';
  15.  
  16. if(mysql_query($baza)){
  17. $komunikat .= "Zapis do bazy poprawny";
  18. } else {
  19. $komunikat .= "Bład zapisu danych";
  20. }
  21.  
  22. } else {
  23. $komunikat = "Wystąpił błąd w przesyłaniu pliku<br />";
  24. }
  25.  
  26. } else {
  27. $komunikat = 'Błąd: Rozmiar pliku nie może przekroczyć 10 MB';
  28. }
  29. } else {
  30. $komunikat = 'Pola <i>tytuł</i> oraz <i>plik</i> są polami obowiązkowymi';
  31. }
  32. $kom = true;
  33.  
  34. }


Funkcja upload_music():
  1. function upload_music($plik,$sciezka_zapisu){
  2. if($plik['error'] == UPLOAD_ERR_OK){
  3.  
  4. $podziel_nazwe = explode(".",$plik['name']);
  5. $nr_ostatniego = sizeof($podziel_nazwe);
  6. $rozszerzenie = $podziel_nazwe[$nr_ostatniego-1];
  7.  
  8. $nazwa = time().'.'.$rozszerzenie;
  9. $sciezka = $sciezka_zapisu.$nazwa;
  10. $tymczasowa = $plik['tmp_name'];
  11. $typ = $plik['type'];
  12. if($typ == 'audio/mpeg' or $typ == 'audio/mpeg3' or $typ == 'audio/x-mpeg-3')
  13. {
  14. if(move_uploaded_file($tymczasowa,$sciezka)){
  15. return $nazwa;
  16. } else {
  17. return false;
  18. }
  19. } else {
  20. return false;
  21. }
  22. } else {
  23. return false;
  24. }
  25. }


Bardzo proszę o wskazówki co może być nie tak.
peter13135
Njapierw sprawdź czy ładuje pliki .txt. Spotkałem się z takim czymś, że darmowe serwery kasują pliki mp3 zaraz po ich wrzuceniu.

$_FILES['plik']['error'] - to powinno (o ile dobrze pamperętam) przechowywac kod błędu.
sapper_pierwszy
To jest konto płatne na hostingu 1&1
I na niektórych kompach normalnie wysyła plik, a na niektórych nie daje rady.

Z kodem błędu też będzie problem, bo ten skrypt tak jakby nigdy nie przestaje działać i w związku z tym nie zwraca żadnego wyniku. I nie chodzi tu o szybkość łącza bo w jednym domu na tej samej sieci jeden komputer wysyła drugi nie.
peter13135
No to wina pewnie jest po stronie tego drugiego komputera.
sobol6803
W firebugu (dodatek do firefoxa) jest fajna zakładka o nazwie "Net". Tam możesz sprawdzić opóźnienia i co robi skrypt aktualnie.
sapper_pierwszy
Najtrudniejsze jest to że problem pojawia się u właściciela portalu a nie u mnie i ciężko jest mi to przetestować. Spróbuje z tym firebugiem.
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.