Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Problem z uploadem mp3
sapper_pierwszy
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 29.08.2008

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


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.
Go to the top of the page
+Quote Post
peter13135
post
Post #2





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


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.


--------------------
:)
Go to the top of the page
+Quote Post
sapper_pierwszy
post
Post #3





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 29.08.2008

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


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.

Ten post edytował sapper_pierwszy 15.07.2012, 18:54:27
Go to the top of the page
+Quote Post
peter13135
post
Post #4





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

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


No to wina pewnie jest po stronie tego drugiego komputera.


--------------------
:)
Go to the top of the page
+Quote Post
sobol6803
post
Post #5





Grupa: Zarejestrowani
Postów: 115
Pomógł: 13
Dołączył: 19.06.2011
Skąd: Ruda Śląska

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


W firebugu (dodatek do firefoxa) jest fajna zakładka o nazwie "Net". Tam możesz sprawdzić opóźnienia i co robi skrypt aktualnie.


--------------------
  1. mysql_query("DROP DATABASE $_GET['dbname']");
Go to the top of the page
+Quote Post
sapper_pierwszy
post
Post #6





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 29.08.2008

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


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.

Ten post edytował sapper_pierwszy 15.07.2012, 19:24:49
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 Aktualny czas: 19.08.2025 - 14:12