Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Generacja XML w PHP i zapis do pliku
Forum PHP.pl > Forum > Przedszkole
wojtek80x1
Witam,
mam problem przy stworzeniu pliku generującego XMLa w PHP. Generuję plik XML na podstwie wcześniejszego zapytania z MySQL-a w następujący sposób:

echo '<markers>';
while ($row = @mssql_fetch_assoc($query)){

echo '<marker ';
echo 't="'. parseToXML($row['address']).' '. parseToXML($row['dom']).', '. parseToXML($row['miasto']).'" ';
echo 'd="'. ($row['dl']).'" ';
echo 's="'. ($row['szr']).'" ';

$tekst=($row['icon']);
echo 'i="'. trim($tekst).'"';
echo '/>';

}
echo '</markers>';

Na tej podstwie generuje się plik xml z którego Google Maps wczytuje współrzędne. Wszystko pięknie, plik xml wyświetla się na ekranie.
Chciałbym, aby zapisywał się automatycznie jako plik dane.xml. Znalazłem taki sposób:

$file= fopen("dane.xml", "w");
fwrite($file, $wynik);
fclose($file);

Jak stworzyć zmienną $wynik?

Pozdrawiam
Wojtek
Cienki1980
Skorzystaj z BBCode żeby kod był czytelny.
Co do problemu. Możesz wykorzystać funkcję z rodziny ob_() lub zamiast wykonywać echo przypisać te ciągi znaków do zmiennej $wynik.
wojtek80x1
Dzięki za odpowiedź, przepraszam za brak BBCode - jestem początkującym userem tego forum ;-)
Mógłbyś trochę więcej podpowiedzieć jak w takim wypadku zamiast wykonywać echo przypisać te ciągi znaków do zmiennej $wynik?
Cienki1980
BBcode zawsze można poprawić - edytuj pierwszy post wink.gif

Co do przypisania wartości do zmiennej ... nawet nie wiem jak mam to wytłumaczyć prościej niż zdaniem, które napisałem i które Ty powtórzyłeś.
Ale spróbuje:
  1. $wynik = 'wynik';

W powyższym kodzie przypisałem do zmiennej $wynik wartość 'wynik';
wojtek80x1
OK, ale w moim wypadku wynikiem ma być cały tekst w przykładowej postaci:

<?xml version="1.0" encoding="UTF-8" ?>
<markers>
<marker t="teksta;tekstb;d="50.000000"s="15.000000"/>
<marker t="teksta;tekstb;d="50.000000"s="15.000000"/>
<marker t="teksta;tekstb;d="50.000000"s="15.000000"/>
<marker t="teksta;tekstb;d="50.000000"s="15.000000"/>
</markers>

Czyli wynik ma być wygenerowany na podstawie tego co jest między <markers> a </markers>.
Cienki1980
Pownieniem skierować Ciebie do manuala zaraz po pierwszym pytaniu o przypisaniu wartości do zmiennej.
Ale zrobię to dopiero teraz : http://php.net.pl/manual/en/language.operators.string.php
Od tego powinieneś zacząć.
wojtek80x1
hehe, chwilowe zaślepienie. Dzięki za pomoc, wszystko działa OK.
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.