PDA

Zobacz pełną wersję : Błąd "Warning: Invalid argument supplied for foreach() in"



pkowal007
26-01-2015, 10:20
Witam,

przeniosłem kilka dni temu na nowy serwer stronę opartą na Joomli 2.5.27. Przeniosłem wszystkie pliki z ftp oraz badę danych. Serwer u tego samego dostawcy home.pl tylko inna nazwa (przenosiłem w ten sposób kilka innych stron też opartych na Joomla i wszystko jest ok).

Po tej operacji wywaliło mi taki komunikat (na stronie głównej( w module wyszukiwania: Warning: Invalid argument supplied for foreach() in /modules/mod_djclassifieds_search/tmpl/default.php on line 132
Strona opiera się na komponencie DJ-Classifieds, w nim znajdują się różne opcje m.in. "Lokalizacja". Tutaj powinienem mieć wyszczególnione różne miejscowości jednak nic się nie pojawia prócz takiego podobnych błędów:
Warning: Invalid argument supplied for foreach() in /administrator/components/com_djclassifieds/lib/djregion.php on line 242
Warning: Invalid argument supplied for foreach() in /administrator/components/com_djclassifieds/lib/djregion.php on line 294

W załączniku dodałem zrzuty kodów tych linijek wskazanych w powyższych błędach.

Czy jest ktoś z Was w stanie pomóc rozwązać mi ten poroblem? Domyślam się, że coś dzieje się z bazą danych. Tylko gdzie szukać rozwiązania?

Dzięki!

Pozdrawiam,
Paweł

Gall Anonim
26-01-2015, 10:38
To jest akurat tylko ostrzeżenie - co prawda "nie powinno go być ale da się z nim żyć" - możesz go schować wyłączając wyświetlanie błędów w konfiguracji a sam problem myślę że należy zgłosić do pomocy technicznej DJ - takie informacje są bardzo przydatne dla twórców rozszerzeń ponieważ przetestowanie rozszerzeń w każdym środowisku i sytuacji, czy też konfiguracji przed publikacją jest praktycznie niewykonalne.

- - - Updated - - -

Mam jeszcze jedno pytanie - czy Joomla (obecna) jest osadzona w podkatalogu czy też w katalogu głównym usługi na home.pl?
Ponieważ akurat w przypadku home.pl wskazane jest osadzanie witryn w podkatalogach a home.pl nie tworzy z automatu podkatalogów dla przypisanych domen i trzeba robić to ręcznie.

pkowal007
26-01-2015, 10:48
Dzięki za szybką odpowiedź. No jeżeli nikt nie podsunie mi rozwiązania czy też sam sobie z tym nie poradzę to chyba tak zrobię, że napiszę do nich.

Ostrzeżenie owszem, mogę schować ale to nie rozwiązuje mi problemu ponieważ w tym miejscu zamiast tego komunikatu powinienem mieć dane które były wklepane - czyli miejscowości. W chwili obecnej nic z bazy się nie zaciąga tylko wywala to ostrzeżenie.

Jomla osadzona jest w 0:/public_html/folder_nazwa/... . Na wcześniejszym serwerze była osadzona 0:/folder_nazwa/... . Czyli identycznie bo teraz dodali folder public_html w którym mam różne foldery ze stronami. Chyba, że źle coś rozumiem i tutaj tkwi problem.

Uważam jednak, że problem tkwi w bazie. Coś po eksporcie się krzaczy. Tylko co?

Zauważyłem jeszcze w bazie, na samym dole taki komunikat: empty linktext in function PMA_generate_html_tab() - co to znaczy?

Dzięki.

Gall Anonim
26-01-2015, 10:59
Zawsze możesz wyeksportować starą bazę na zewnątrz i zaimportować całość do nowej - osobiście stworzyłbym sobie nową pustą bazę i zaimportował całość wraz ze strukturą po czym podłączył pod witrynę - miałbyś sprawdzenie swojej teorii bez usuwania obecnej bazy tylko poprzez stworzenie nowej BD i po zachowaniu kopii wykonaniu zmiany trzech parametrów w configuration.php

pkowal007
26-01-2015, 11:09
Ale tak właśnie zostało to wykonane. Strona była na innym serwerze z którego przeniosłem dane poprzez ftp. Na tym nowym musiałem stworzyć też pustą BD po czym na starym ją wyeksportowałem do zipa i zimportowałem w nową. Po tym całym manewrze pojawił się ten problem...
Z tym, że tak samo przenosiłem inne strony i żadne problemy się nie pojawiły. Tylko w tym przypadku...

Gall Anonim
26-01-2015, 11:44
jak nie toperz - to nie wiem :-)
Idę na stok pojeździć - może to mi dzisiaj lepiej wyjdzie niż pomaganie :-(

pkowal007
26-01-2015, 13:20
Hehe, dobre i to co napisałeś ;) Dzięki!


Może ktoś inny rzuci jakieś pomysły??

Jola
26-01-2015, 13:55
Szkoda czasu - sprawę trzeba zbadać na miejscu.
Jeśli chcesz to podaj dostęp do strony (bazy) na priv.