Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: prośba o tłumaczenie błędów
Forum PHP.pl > Forum > PHP
KotekMK
Tak jak w temacie joomla wyrzuca mi błędy takie komunikaty...
Kod
Warning:  Invalid argument supplied for foreach()

I link do pliku. I teraz moja prośba co znaczy taki komunikat
Rafal Filipek
ze podajesz do foreach cos co nie jest tablica. wszystko o foreach -> http://pl.php.net/foreach
KotekMK
a można trochę jaśniej? bo wiesz ja zainstalowałem sobie gotowy dodatek do joomli nie znam się zbytnio na tym:) czy mogą mieć na to wpływ chmoody ponieważ o wrzuceniu plików na serwer ustawiły mi sie na 644

Poprawiłeś post w czasie gdy ja pisałem już sobie czytam.

Raczej nie poczytam bo choć bym bardzo chciał nie znam angielskiego ale poszukam coś takiego po polsku ale mogę prosić o jakieś propozycje rozwiązania, powiem tak iż nie wiem czemu tak działa na innym serwerze na innej stronie wszystko ok było.
ddiceman
znajdz linijke, gdzie wyswietla Ci sie blad (masz podane w komunikacie bledu), powinienes miec cos w styl:
  1. <?php
  2. foreach($cos as $inne_cos)
  3. ?>

lub
  1. <?php
  2. foreach($cos as $jakies_cos => $inne_cos)
  3. ?>

i dodaj na poczatku nawiasu
Kod
(array)

np.
  1. <?php
  2. foreach((array)$cos as $jakies_cos => $inne_cos)
  3. ?>


a na przyszlosc pomysl, czy warto zadawac pytanie, na ktore odpowiedzi nie zrozumiesz, bo
Cytat
nie znam się zbytnio na tym:)


i w odpowiedzi na Twoje pytanie - prawa dostepu (co nazywasz chmodami) nie maja tutaj nic do rzeczy
KotekMK
Cytat(ddiceman @ 17.02.2009, 11:18:49 ) *
a na przyszlosc pomysl, czy warto zadawac pytanie, na ktore odpowiedzi nie zrozumiesz, bo

Dlatego zadaje pytanie bo się nie znam:) ale dziękuję bardzo pomogło:D

Wszystko działa znaczy się błąd się nie wyświetla ale porównałem pliki z serwera gdzie wszystko działa poprawnie i tam nie ma nic takiego dopisanego:( a działa.

PS. czy to przypadkiem nie jest jakieś ominięcie problemu a nie rozwiązanie ponieważ w miejsce wyświetlania błędu powinny wstawić się pewne dane które się nie wystawiają błąd się nie wyświetla ale i miejsce jes puste.
kosmowariat
spróbuj tak ;-)
  1. <?php
  2. if(is_array($cos)) {
  3.  foreach($cos as $inne_cos){
  4.  }
  5. } else {
  6. // wyświetl komunikat, wywal wyjątek czy co tam chcesz
  7. }
  8. ?>
ddiceman
Cytat(KotekMK @ 17.02.2009, 23:10:49 ) *
Dlatego zadaje pytanie bo się nie znam:) ale dziękuję bardzo pomogło:D

Wszystko działa znaczy się błąd się nie wyświetla ale porównałem pliki z serwera gdzie wszystko działa poprawnie i tam nie ma nic takiego dopisanego:( a działa.

PS. czy to przypadkiem nie jest jakieś ominięcie problemu a nie rozwiązanie ponieważ w miejsce wyświetlania błędu powinny wstawić się pewne dane które się nie wystawiają błąd się nie wyświetla ale i miejsce jes puste.

Nie znajac kodu nie powiem Ci, skad sie bierze roznica. A czy to obejscie problemu? Nie sadze. Poniewaz najprawdopodobniej roznica w dzialaniu miedzy serwerem a localhostem powoduje najwyzej, ze do foreach() jest podawana pusta zmienna a nie zmienna typu nie-array. Zatem zrzutowanie pustej zmiennej do tablicy nie spowoduje niczego zlego - petla i tak sie nie wykona.
Blad moim zdaniem nie lezy wcale w tej linii a wczesniej. Mozesz zaczepic mnie na privie a przejrze, czego to moze byc kwestia
KotekMK
Pomoże ktoś jeszcze? temat nadal aktualny....
bazyliszek83
Cytat(KotekMK @ 27.02.2009, 09:26:03 ) *
Pomoże ktoś jeszcze? temat nadal aktualny....


Kolego opisz najpierw problem rzetelnie, podaj fragmenty kodu, całość wyświetlanych komunikatów, itp. Inaczej nikt ci nie pomoże, bo ktoż z nas potrafi czytać w myślach?smile.gif
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.