Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zawaansowana Mapa Google
Forum PHP.pl > Forum > XML, AJAX
Beacri
Witam,
od 3 dni walczę ze skryptem, który z bazy danych pobiera informacje i wstawia markery na mapie google.

Wzorowałem się na materiale dostępnym tutaj:
http://code.google.com/intl/pl/apis/maps/a...phpsqlajax.html

Jednak mapa pozostaje bez markerów. podglądając wczyywany plik:phpsqlajax_genxml.php otrzymuje komunikat błedu:

  1. Warning: domnode::append_child() expects parameter 1 to be object, null given in D:\Programy\WebServ 2.0\httpd\phpsqlajax_genxml.php on line 7
  2.  
  3. Warning: Cannot modify header information - headers already sent by (output started at D:\Programy\WebServ 2.0\httpd\phpsqlajax_genxml.php:7) in D:\Programy\WebServ 2.0\httpd\phpsqlajax_genxml.php on line 28
  4.  
  5. Fatal error: Call to a member function append_child() on a non-object in D:\Programy\WebServ 2.0\httpd\phpsqlajax_genxml.php on line 34


o ile drugi błąd jest jasny dla mnie, to nie wiem jak rozwiązać pozostałe dwa.

operuje na PHP 5.2.5

Bardzo proszę o pomoc, to jest zaległy projekt sad.gif
lobopol
A pokaż kod, bo ja widzę po warningach, że działasz na złych zmiennych pierwszy warning wskazuje, że nie dałeś obiektu jako parametru, 2 że wyświetliłeś coś przed modyfikacją nagłówków, 3 próbujesz na nie obiekcie wykonywać metody jakiejś klasy
Beacri
Fragment kodu wygląda następująco:

  1. $doc = domxml_new_doc("1.0");
  2. $node = $doc->create_element("markers");
  3. $parnode = $doc->append_child($node);


Z tego co widziałem w manualu i na innych stronach, to takie 3 linijki działają poprawnie u innych, dlatego obstawiam, że chodzi o konfigurację mojego serwera.
lobopol
A masz to rozszerzenie zainstalowane na serwerze?
Beacri
Doszedłem do tego, że potrzebuję php_domxml.dll żeby korzystać z XML, więc już nie wywala błędów, że odwołuje się do nieznanej funkcji. Nie wiem czy powinienem coś jeszcze rozszerzyć serwer o jakąś bibliotekę.

-----------------------------------
print_r() wykazał, że podczas wykonywania kodu:
  1. $doc = domxml_new_doc("1.0");
  2. $node=$doc->create_element("markers");
  3. $parnode=$doc->append_child($node);


$doc jest dokumentem xml, w drugim wersie powstaje tagname "markers" ale $node pozostaje nullem. To samo z $parnode.

Problem rozwiązany. Wina leżała po stronie zbyt nowego PHP. Gdy wróciłem do starego 4.4.7 wszystko zaczęło działać poprawnie.
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.