Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]//// wywala blad UNDEFINED INDEX
infolearn
post 1.12.2007, 13:43:37
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 17.09.2007

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


  1. <?php
  2.  
  3.  
  4.  
  5. if($_FILES['plikuzytkownika']['error'] >0) //// wywala blad UNDEFINED INDEX
  6. {
  7. echo 'Problem: ';
  8. switch ($_FILES['plikuzytkownika']['error'])
  9. {
  10. case 1; echo 'Rozmiar pliku przkroczyl wartosc upload_max_filesize'; break;
  11. case 2; echo 'Rozmiar pliku przekroczyl wartosc max_file_size'; break;
  12. case 3; echo 'Plik wyslany tylko czesciowo'; break;
  13. case 4; echo ' Nie wyslano zadnego pliku'; break;
  14. }
  15. }
  16. //czy plik ma prawidlowy typ MIME?
  17.  
  18. if($_FILES['plikuzytkownika']['type'] != 'text/plain')  //// wywala blad UNDEFINED INDEX
  19. {
  20. echo 'Problem; plik nie zawiera zwyklego tekstu';
  21. }
  22.  
  23. //umieszczenie pliku w pozadanej lokalizacji
  24.  
  25. $lokalizacja = '/wyslane/'.$_FILES['plikuzytkownika']['name'];
  26.  
  27. if(is_uploaded_file($_FILES['plikuzytkownika']['tmp_name']))
  28. {
  29. if(!move_uploaded_file($_FILES['plikuzytkownika']['tmp_name'], $lokalizacja))
  30. {
  31. echo 'Problem: Plik nie moze byc skopiowany do katalogu';
  32. }
  33. }
  34. else
  35. {
  36. echo 'Problem: mozliwy atak podczas wysylania pliku. Nazwa pliku: ';
  37. echo $_FILES['plikuzytkownika']['name'];
  38. }
  39.  
  40. echo 'Plik wyslany<br /><br />';
  41.  
  42. //ponowne sformatowanie zawartosci pliku
  43.  
  44. $wp = fopen($lokalizacja, 'r');
  45. $zawartosc = fread ($wp, filesize ($lokalizacja));
  46. fclose($wp);
  47.  
  48. $zawartosc = strip_tags($zawartosc);
  49. $wp = fopen($lokalizacja, 'w');
  50. fwrite($wp, $zawartosc);
  51. fclose($wp);
  52. //pokazanie co zostalo wyslane
  53.  
  54. echo 'Podglad zawartosci wysylanego pliku:<br /><hr>';
  55. echo $zawartosc;
  56. echo '<br /><hr>';
  57.  
  58. ?>


witam wywala mi blad w dwoch liniach //// UNDEFINED INDEX

jakies zlote pomysly?
Go to the top of the page
+Quote Post
--infolearn--
post 2.12.2007, 19:58:04
Post #2





Goście







moze ktos na to zerknac?
sadsmiley02.gif
Go to the top of the page
+Quote Post
phpion
post 2.12.2007, 20:08:09
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Może podaj o które to linie chodzi?
Ale swoją drogą: błąd dotyczy odwołania do nieistniejącego indeksu tablicy. Zamiast od razu:
  1. <?php
  2. echo $tab[123];
  3. ?>

sprawdź wcześniej czy element o indeksie 123 istnieje:
  1. <?php
  2. if (isset($tab[123])) echo $tab[123];
  3. ?>
Go to the top of the page
+Quote Post
webdice
post 2.12.2007, 20:12:13
Post #4


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Najpierw sprawdź czy formularz został wysłany, a później odwołuj się do zmiennych z formularza.

Cytat(phpion.com @ 2.12.2007, 20:08:09 ) *
Może podaj o które to linie chodzi?


Linie z błędem zostały za komentowane smile.gif
Go to the top of the page
+Quote Post
BaN
post 2.12.2007, 20:12:31
Post #5





Grupa: Zarejestrowani
Postów: 158
Pomógł: 43
Dołączył: 9.11.2007

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


Sprawdź:
  1. Czy formularz ma ustawione atrybuty: method="post" oraz enctype="multipart/form-data"?
  2. Czy pole formularza, które służy do wysyłania pliku nazywa się rzeczywiście 'plikuzytkownika'?
  3. Jakie dane znadują się w tablicy $_FILES? Możesz zastosować print_r lub var_dump
Go to the top of the page
+Quote Post
phpion
post 2.12.2007, 20:17:07
Post #6





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(webdicepl @ 2.12.2007, 22:12:13 ) *
Linie z błędem zostały za komentowane smile.gif

wstydnis.gif

Cały kod ujmij w if'a:
  1. <?php
  2. if (isset($_FILES['plikuzytkownika'])) {
  3. // reszta kodu
  4. }
  5. ?>
Go to the top of the page
+Quote Post
infolearn
post 2.12.2007, 20:37:59
Post #7





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 17.09.2007

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


Cytat(BaN @ 2.12.2007, 20:12:31 ) *
Sprawdź:
  1. Czy formularz ma ustawione atrybuty: method="post" oraz enctype="multipart/form-data"?
>>tak obydwa
  1. Czy pole formularza, które służy do wysyłania pliku nazywa się rzeczywiście 'plikuzytkownika'?
>>>nie wiem jak ja moglem to przeoczyc:( mialem w html'u 'type' zamiast name
  1. Jakie dane znadują się w tablicy $_FILES? Możesz zastosować print_r lub var_dump

Dziekuje za wszystkie odpowiedzi
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: 30.06.2025 - 16:06