Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> upload plików
wipo
post
Post #1





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


Mam taki dziwny problem.
Napisałem skrypt uploadu plików z poziomu przeglądarki (move_uploaded_file) i:
na linuxie z zainstalowanym apachem działa zawsze.
na windowsie z zainstalowanym XAMPP jedne pliki przegrywa drugie nie.

Co jest najśmieszniejsze to nie ma żadnych zależności między przegrywanymi plikami, po prostu raz je przegrywa raz nie.

Gdzie może tkwić błąd? Powiem że testowałem to nawet na przykładzie z php.net i mam ten sam problem
Go to the top of the page
+Quote Post
Sh4dow
post
Post #2





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

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


malutkie pliki tez wywala ? czy tylko duze ? Jesli duze sprawdz czas wykonywania skryptu i czas oczekiwania na posta (czy jakos tak to sie nazywa w php.ini). Ale jesli nawet najprostrze skrypty ci padaja to oznacza błąd w konfiguracji serwera
Go to the top of the page
+Quote Post
wipo
post
Post #3





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


Niezależnie od nazwy rozmiary typu itp
W konfiguracji xampp nic nie ruszałem więc może jakiś bug?
Go to the top of the page
+Quote Post
Sh4dow
post
Post #4





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

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


tak, chyba bug xampp'a. Sadzisz ze upload plikow jako czesto uzywana funkcjonalnosc miała by jakiegos nieznanego buga ?
Moze byc podal jakies kody, błędy ustawił error_reporting na E_ALL itd (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
(IMG:http://forum.php.pl/style_emoticons/default/guitar.gif)
Go to the top of the page
+Quote Post
wipo
post
Post #5





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


Upload
  1. <?php
  2. if (($_POST['dodaj_produkt'])&&(is_numeric($_GET['id_produktu']))){
  3. $nazwa_produktu=$_POST['nazwa_produktu'];
  4. $opis_produktu=$_POST['opis_produktu'];
  5. $cena=str_replace(",",".",$_POST['cena']);
  6. $kategoria=$_POST['kategoria'];
  7. $ilosc=$_POST['ilosc'];
  8. $zdjecie=$_FILES['zdjecie']['name'];
  9. $zdjecie_t=$_FILES['zdjecie']['tmp_name'];
  10. $id_produkt=$_GET['id_produktu'];
  11.  
  12. if (mysql_query("update produkt set nazwa_produktu='$nazwa_produktu',opis_produktu='$opis_produktu',cena='$cena',
  13. kategoria='$kategoria',ilosc_na_magazynie='$ilosc' where id_produktu=".$_GET['id_produktu'])){
  14. chdir("../produkty");
  15. chdir($id_produkt);
  16. // print getcwd()."<br>";
  17. // print basename($zdjecie)."<br>";
  18. // print $zdjecie_t."<br>";
  19. if (!empty($zdjecie)){
  20. if (move_uploaded_file($zdjecie_t,basename($zdjecie))){
  21. mysql_query("update produkt set zdjecie='".basename($zdjecie)."' where id_produktu=".$_GET['id_produktu']);
  22. } else {
  23. print "Nie można przegrać zdjęcia.";
  24. print $_FILES['userfile']['error'];
  25. }
  26. } else {
  27. //mysql_query("update produkt set zdjecie='' where id_produktu=$id_produktu");
  28. }
  29. chdir("../../admin");
  30. print "Produkt zostal zmieniony";
  31. }
  32. }
  33. ?>


a dostaje tylko błąd undefindex index kasuj_produkt po reporting_error

Co jeszcze śmieszniejsze błąd występuje tylko przy edycji rekordu (przy jego dodawaniu nie)
Go to the top of the page
+Quote Post
Sh4dow
post
Post #6





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

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


to: error_reporting(E_ALL); to daj moze lepiej na poczatku a nie na koncu.
a przy okazji, blad załadowanego pliku sprawdzamy przed jego załadowaniem, a nie wyświetlamy po.
  1. <?php
  2. if( $_FILES['userfile']['error'] != ) {
  3. //OK
  4. } else {
  5. //ERROR!
  6. }
  7. ?>


Ten post edytował Sh4dow 19.12.2006, 15:49:42
Go to the top of the page
+Quote Post
wipo
post
Post #7





Grupa: Zarejestrowani
Postów: 856
Pomógł: 19
Dołączył: 30.08.2005
Skąd: 100lica

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


1. reporting_error dałem na początku i na końcu.
$_FILES['zdjecie']['error'] faktycznie za późno.

Ale to nie zmienia faktu że błąd jest tylko undefined_index kasuj_produkt


Uporałem się ale nie wiem do tej pory o co chodzi

Wystarczy że odczekam pomiędzy kolejnymi uploadami zdjęcia jakieś 20 sekund i wszystko działa.
Jak robię to za szybko to system raz przegra raz nie (to samo zdjęcie)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 14:32