Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Narzędzie do tworzenia map stron w Google
Pozycjonowanie i Optymalizacja > Pozycjonowanie i Optymalizacja > Google > Google Sitemaps
Stron: 1, 2, 3
piotrek
Mam nadzieję że narzędzie się przyda wszyskim zapaleńcom Google Sitemaps smile.gif

http://mapy.stron.pl/gsmaster_index.php

ostatnia aktualizacja skryptu: 3.01.2006 - polecam pobrać poprawkę




skrócona instrukcja:
- pobierz plik gsmaster_pl.zip, rozpakuj go i umieść w katalogu głównym na serwerze
- zaktualizuj poniższe dane w pliku gsmaster.php

// usupelnij dane serwera mysql
mysql_connect("serwer", "nazwa_uzytkownika", "haslo");
mysql_select_db("baza_danych");

// sciezka bezwzgledna Twojego serwera
$sciezka = "/twoja/sciezka/do/serwera/";

// ustaw swoj login i haslo do skryptu
$login = "login";
$pass = "haslo";


- ustaw chmod tak aby plik mógł zapisywać na Twoim serwerze
- dostęp do skryptu dodatkowo można zabezpieczyć autoryzacją w htaccess
- odpal plik i zaloguj się

po zalogowaniu:
- stwórz nowy plik map (bez polskich znaków i spacji)
- stwórz plik zapytań ini
- zedytuj plik zapytań ini i zapisz go (wystarczy uzupełnić przykładowe zapytanie) - interesują nas dwie zmienne $query z najzwyklejszym zapytaniem do bazy mysql oraz $this_url - konstrukcja urla jaką chcemy uzyskać - pamiętać o stawianiu &apm; zamiast samego & w urlach

następnie
- wykonaj zapytanie i nadpisz plik xml
- wejdź do Google i podaj im informację o swoim pliku xml

możesz stworzyć wiele plików xml
- generuj pliki wg instrukcji pozyżej oprócz podawania informacji o pojedyńczym pliku xml
- wykonaj plik indexu
- wejdź do Google i podaj im informację o swoim pliku indexu


Główna idea skryptu jest taka aby nie skanować stron żadnym robotem (co będzie pożerać transfer) tylko korzystać z tego co ma się w bazie do wygenerowania urli dokładnie takiej postaci jaką potrzebujesz smile.gif

Pliki zapytań w zasadzie można dostosować do każdego CMSa opartego o PHP/MySql. Przewaznie do wygenerowania kompletnego zestawu URLi wystarczy wykorzystać tylko z jedno pole w tabeli - id.

Jeśli ma się np. system tekstów to pliki można podzielić tak aby każda kategoria tekstów miała swój plik xml.

Jeśli któraś z kategorii przekracza 10.000 URLi (google przyjmuje do 50 tysięcy URLi w jednym pliku xml, plik nie może przekraczać 10 MB), możesz regulować wielkość pliku xml za pomocą zapytania mysql. Tzn można tworzyć dwa lub więcej plików xml na 1 kategorię.

Jest możliwość generowania pliku xml ręcznie aby mieć także mapę z tych obszarów serwisu których nie da się wygenerować automatycznie.


Miłego korzystania z GSMaster

Jest tez prośba - skoro skrypt ułatwia Wam pracę proszę osoby korzystające z niego o link zwrotny smile.gif
<a href="http://mapy.stron.pl" target="_blank">Mapy Stron</a>




P.S. 1 zapraszam do lektury krótkiego tekstu na temat Google Sitemaps Master

P.S. 2 jeśli komuś się spodoba GSMaster i chciałby umieścić komentarz na grupie google-sitemaps to zapraszam

P.S. 3 komentarze na forum seochat też będą mile widziane
Saint
Warning: dir(/twoja/sciezka/do/serwera/): failed to open dir: No such file or directory in /gsmaster.php on line 133

Fatal error: Call to a member function on a non-object in /gsmaster.php on line 134


chyba cos zwalilem albo ty wink.gif
nrm
@kid: Warning: dir(/twoja/sciezka/do/serwera/):
to daje po oczach..
Saint
sciezke zmienilem a blad ten tam.

sorry dziwne te serwery w hom.pl plik nadppisalem a tu nic sie nie zmienilo ... racja sorry za zamieszanie

wszystko pieknie nestety nie wygenerowalo mi sie niz poza strona glowna sad.gif
piotrek
wszystko pieknie

Niestety uciążliwe jest to że google wymaga aby pliki przechowywane były w katalogu głównym serwera. Aby skrypt tworzył i zapisywał pliki na serwerze musisz mu na to pozwolić chmodując katalog główny


może komuś jednak uda się sprawdzić i ocenić skrypt smile.gif
beha
Na pewno wadą skryptu jest konieczność posiadania wiedzy na temat cmsu, mysql i php, więc zastosowanie wsród właścicieli stronek dość ograniczone, biorąc pod uwage że większość osób korzysta z gotowców nie wiedząc za bardzo co w bazie tak naprawde siedzi.

Jesli natomiast ktoś korzysta z własnych rozwiązań to skrypt bardzo porządkuje pracę, wczęśniej raczej odpalałem generatora map, który pożerał dużo transferu. Teraz już na drugiej stronce używam tego skryptu i wszystko odbywa się dużo sprawniej, można sie np lepiej pobawić z wartościami "ważności" podstron i teraz w końcu mogę codziennie wygenerować "swieżą" mapę, przy generatorach "pająkach" to raczej było niemożliwe.
Saint
piotrek: dobra zrobilem tak jak mowisz, ze w glownym katalogu sa pliki wszystkie chemoda na glowny tez dalem efekt listy linkow ten sam sad.gif

cos nie tak chyba jest po kliknieciu w 'wykonaj zapytanie i nadpisz plik xml'

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /sitemap_fotokids.ini on line 5

Warning: Cannot modify header information - headers already sent by (output started at /sitemap_fotokids.ini:2) in /gsmaster.php on line 484
piotrek
Odpowiedź serwera wygląda jakby skrypt otrzymał błędne zapytanie do bazy

zedytuj wygenerowany plik sitemap_fotokids.ini i zerknij czy zapytanie do bazy zawarte w pliku na 100% jest OK?


biorąc pod uwage że większość osób korzysta z gotowców nie wiedząc za bardzo co w bazie tak naprawde siedzi

niestety nie da się dogodzić wszystkim sad.gif chyba że ktoś np. zastosuje GSMaster w phpBB i udostępni plik ini, wówczas wystarczyłoby dać własny prefix

wobec tego mam prośbę do osób które wdrożą GSMaster o udostępnianie gotowych zapytań do najpopularniejszych CMSów i for smile.gif
Saint
piotrek: byc moze to jakies anomalia w home.pl wlasnie sie gimnastykuje zeby ustalic co jest nie tak.
piotrek
być może, w razie czego poczekaj na inne wypowiedzi - może ktoś też będzie miał serwer na home.pl i wówczas będziemy weryfikować.

Tak czy inaczej - skoro bez większych problemów udało Ci się stworzyć plik xml, a potem plik ini to reszta to już wykonanie najzwyklejszego zapytania do bazy


<?
$query = mysql_query("SELECT * FROM your_table order by data DESC limit 0,100");

while($urls = mysql_fetch_assoc($query)) {

$this_url = "http://$_SERVER[SERVER_NAME]/index.php?example_param=$urls[id]";

$priority = " <priority>0.8</priority>\n";
$changefreq = " <changefreq>daily</changefreq>\n";

$output = " <url>\n <loc>" . $this_url . "</loc>\n" . $changefreq . $priority . "</url>\n";
$gout = fwrite( $gp , $output );

}

function dodatkowa_funkcja() {
// mozesz tworzyc dodatkowe funkcje wspierajace generowanie linkow
}

?>


sam robię czasem błędy w prostych zapytaniach dlatego sugerowałem wcześniej że może u Ciebie jakiś błąd się wkradł, ale skoro twierdzisz że zapytanie $query masz na 100% dobrze to spróbuj jeszcze usunąć funkcję dodatkowa_funkcja() może tak ruszy

jeśli tak taż nie będzie działać to przykro mi ale nie wiem gdzie szukać problemu
Saint
piotrek: chyba cos z zapytaniem do bazy sie kaszani bo zadnych tabeli czy jakis danych nie ma w tej bazie do ktorej teoretycznie jest podlaczony skrypt.
piotrek
Kid, albo ja nie rozumiem co piszesz albo Ty nie zrozumiałeś do końca o co chodzi w GSMaster. Spróbuje ująć to tak: masz sobie samodzielnie wyciągać z istniejącej tabeli takie dane jakich aktualnie potrzebujesz... plik ini jest tylko przykładowy smile.gif

załóżmy że masz tabelę o nazwie moje_posty z postami
id_postu | tytul_postu | tresc_postu | data | id_usera

to Twoje ini powinno wyglądać tak
<?
$query = mysql_query("SELECT id_postu FROM moje_posty order by data DESC limit 0,100");

while($urls = mysql_fetch_assoc($query)) {

$this_url = "http://$_SERVER[SERVER_NAME]/twoj_plik.php?twoja_nazwa_parametru=$urls[id_postu]";

$priority = " <priority>0.8</priority>\n";
$changefreq = " <changefreq>daily</changefreq>\n";

$output = " <url>\n <loc>" . $this_url . "</loc>\n" . $changefreq . $priority . "</url>\n";
$gout = fwrite( $gp , $output );

}

?>
Saint
piotrek: to juz sie pogubilem w tym wszystkim zdaje sie tongue.gif

Mozesz bardziej lopatologicznie napisac instrukcje postepowania?

btw. to okiento do edycji ini przydalo by sie troche tego wieksze.
piotrek
brnąc dalej w Googlowskie Sitemapy właśnie wymyśliłem że skoro już przechowujemy na swoich serwerach pliki dla Googla może warto z nimi coś zrobić, tzn wykorzystać do pokazania sitemapy na stronie www


Napisałem szybko mały, prosty czytnik do plików xml wygenerowanych przez GSMaster.

Załóżmy że plik nazwiemy gsmaster_reader.php aby wyświetlić treść wystarczy zapodać zmienną zmienną - wyglądałoby to tak: http:// twoj_serwer/gsmaster_reader.php?file=twoja_mapa


<?

$sciezka = "/twoja/sciezka/do/serwera/";

if ($_GET[file]!="") {
    czytaj_dane($_GET[file]);

echo "<br /><br />";
echo "<a href=http://mapy.stron.pl/gsmaster_index.php target=_blank>mapy stron</a>";
}


function czytaj_dane($url) {
global $sciezka;

$url = $sciezka . "sitemap_" . $url . ".xml";

if (file_exists($url)) {

if ($f = @fopen($url, 'r')) {
            $content = '';
            while (!feof($f)) {
                $content .= fgets($f, 4096);
            }
            fclose($f);

      preg_match_all("'(<loc.*?>)(.*?)(</loc>)'si", $content, $items);
      foreach($items[2] as $urle) {
    echo "$urle";
    }
  }

}
}


?>



niestety linki wgłąb serwisu będą bez anchorów ale to już nie moja wina, lepsza taka mapa niż żadna smile.gif

jeśli ktoś ma kilka map żeby było wygodniej można napisać czytnik do sitemapindex.xml ale to już chyba będzie przesada smile.gif wystarczy zestawić kilka linków z nowej podstrony, albo wpakować linki do poszczególnych map np. w stopkę



Kid, bardziej łopatologicznie naprawde już się nie da. Teraz widzę okienko edycji się sypie w FF
Saint
piotrek: mi sie wydaje, ze czesto w bvardoz nie zrozumialy sposob piszesz o tym co trzeba zrobic.
EDDY
Wszystko działa. Dzięki.

Mam jeszcze pytanie. Czy jak dodam za pierwszym razem wszystkie niusy do Google, to nic się nie stanie, czy muszę dodawać ostatnie 100?smile.gif
beha
(Kid @ 5.12.05 - 15:49) [snapback]110679[/snapback]

piotrek: mi sie wydaje, ze czesto w bvardoz nie zrozumialy sposob piszesz o tym co trzeba zrobic.


Albo po prostu w bardzo niezrozumiały sposób nie potrafisz zrozumieć. Jak masz za małe okienko to wejdź w nie skopiuj tekst potem wklej do notatnika, wyedytuj pętle generującą zapytanie wklej z powrotem i zatwierdź.
EDDY
(Kid @ 5.12.05 - 14:06) [snapback]110624[/snapback]

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /sitemap_fotokids.ini on line 5

Warning: Cannot modify header information - headers already sent by (output started at /sitemap_fotokids.ini:2) in /gsmaster.php on line 484


Masz źle ustawione zapytanie do bazy. Sprawdź w skrypcie, jak wywołujesz to co chcesz dodać do mapy, jak nie znasz zapytań MySQL.
piotrek
Kid, popraw kod wg wcześniejszych poprawek, zrób tak jak pisze beha albo pobierz ponownie kod - tam okienko jest już poprawione.

czesto w bvardoz nie zrozumialy sposob piszesz

większość nadąża za moim tokiem myślenia, jak wspomniałem w poprzednim poście, bardziej łopatologicznie się nie da sad.gif przykro mi

EDDY, zdaje się że w jednej mapie możesz dać max [edit] 50.000 linków (limit Google), dziel tak aby Tobie było wygodnie, dobrze jest dzielić na kilka sitemapek żeby nie musieć wraz z rozrostem Twojego portalu updatować za każdym razem całego (czasem przepastnego) archiwum.
Saint
Ale mi wcale nie chodzi o glupie okienko tylko ogolnie mowie. Wystarczy raz jasno napisac krok po kroku co nalezy zmienic, a tego nie napisales czy zawsze liczysz na to, ze kazdy sie domysli wszystkiego.
beha
(Kid @ 5.12.05 - 16:02) [snapback]110687[/snapback]

Ale mi wcale nie chodzi o glupie okienko tylko ogolnie mowie.


To zacznijmy od tego czy znasz mysql. Jeśli nie, to raczej ciężko będzie ci to dopasować. Jeśli korzystać z gotowców, to będziesz musiał poczekać aż ktoś opublikuje właściwe zapytanie do bazy.
piotrek
Wystarczy raz jasno napisac krok po kroku co nalezy zmienic

Moim zdaniem jest jasno napisane. Wszystko co miałem do przekazania o skrypcie jest w pierwszym poście w akapicie "po zalogowaniu", reszta wyraźnie opisana w samym interfrejsie skryptu. Co więcej na stronie z której pobierałeś skrypt: http://mapy.stron.pl/gsmaster_index.php jest napisane "Wymagana jest podstawowa znajomość PHP i MySql"


Najlepiej zróbmy tak: Pokaż strukturę swojej tabeli to ja czy ktoś inny napewno dostosuje Ci plik ini do Twoich potrzeb.
Saint
beha: nie nie korzystam, znam fakt, ze uzywalem dawno (pisalem) i moge sie nie orientowac we wszystkich funkcjach ... ale nie o to chodzi, chodzi mi o wyjasnienie w sposob bardziej przystepny.
piotrek
Kid, teraz już naprawdę nie ma znaczenia - znasz czy nie znasz PHP, MySql... szkoda postów na to

Wklej tu strukturę tabeli z której chcesz zrobić sitemapę to każdy chętnie Ci pomoże
EDDY
Albo naucz się sam: http://pl2.php.net/manual/pl/function.mysql-query.php
Saint
piotrek: zobacz pm.
piotrek
widziałem PM, dzięki za zaproszenia na gg ale coś mi szwankuje komunikator, pisz co masz do napisania na forum. Przykład pliku ini (do przykładowej struktuy bazy) podany tu DOKŁADNIE obrazuje to co należy wykonać.

Jest dobrze, na mój gust brakuje Ci tylko i wyłącznie prawidłowego zapytania do bazy - reszta działa poprawnie, tworzy i zapisuje pliki na serwerze.

Podaj nazwy pól w tabeli oraz konstrukcję podstawowego URLa (na początek bez mod_rewrite) jaką chcesz uzyskać.
Saint
http://www.fotokids.ws/kid.php?id= taka jest struktura adresu, po id= sa cyfry ktore w tym wypadku oznaczaja kid_id

w tabeli fk_kids: kid_id, when

sitemap_kids.ini

$query = mysql_query("SELECT kid_id FROM fk_kids order by when DESC limit 0,100");

while($urls = mysql_fetch_assoc($query)) {

$this_url = "http://$_SERVER[SERVER_NAME]/kid.php?id=$urls[kid_id]";


robie 'wykonaj zapytanie i nadpisz plik xml' i nadal jest ten sam blad o ktorym wspominalem wczesniej.
piotrek
zapytanie wygląda ok

eeeee, aaaaa... ale z ciekawości, mam pytanie, dlaczego Twój serwer pozwala na otwarcie pliku ini komukolwiek ?

Zobacz - http://www.fotokids.ws/sitemap_kids.ini każdy sobie może ten plik podglądnąć

Może ogólnie coś jest nie tak z interpretacją plików *.ini na Twoim serwerze.

Chyba jednak nikt z nas Ci tutaj nie pomoże, musisz z pytaniem zrwrócić się do admina home.pl

Jeśli więcej osób będzie miało problemy z ini mogę próbować zmienić rozszerzenie plików zapytań na *.cfg ale skoro ini nie działa to głowy nie dam że zmiana rozszerzenia coś pomoże.



P.S. zanim napiszesz do admina zrób jeszcze ostatnią próbę z samym:
$query = mysql_query("SELECT * FROM fk_kids");
Saint
niby taki dobry home.pl, a juz mnie zaczyna wku... irytowac i nie tylko ze wzgledu na to ini.

Poziom wku... jest wprost proporcjonalny do jakosci uslug wink.gif
Saint
(piotrek @ 5.12.05 - 20:09) [snapback]110753[/snapback]

P.S. zanim napiszesz do admina zrób jeszcze ostatnią próbę z samym:
$query = mysql_query("SELECT * FROM fk_kids");



Nic to nie zmienia. Ten sam blad.
piotrek
Kid, nic nie poradzę, pozostaje Ci pisać do home.pl, powodzenia
Saint
(piotrek @ 5.12.05 - 21:03) [snapback]110787[/snapback]

Kid, nic nie poradzę, pozostaje Ci pisać do home.pl, powodzenia


robie to kilka razy w tygodniu, napisalem juz wczesniej.
piotrek
Kid, może czas na zmianę hostingu



a przy okazji właśnie spłodziłem krótkiego arta na temat GSMaster - zapraszam do lektury i komentowania i narzędzia i arta smile.gif

http://pozycjonowanie.stron.pl/txt,11,google-sitemaps.html
Saint
(piotrek @ 5.12.05 - 23:25) [snapback]110877[/snapback]

Kid, może czas na zmianę hostingu


Dopiero co zrobilem to wlasnie stwierdzilem, ze latwiej bedzie opierdalac ludzi z polski, ale widac, ze sa odporni:


> 2. Plik zawiera instrukcje SQL skryptu gsmaster.php niestety
> wyrzuca blad:
>
> Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL
> result resource in /sitemap_kids.ini on line 4
>
> Warning: Cannot modify header information - headers already sent by
> (output started at /sitemap_kids.ini:4) in /gsmaster.php on line 484

W jaki sposob mozna wejsc na strone tak by zobaczy w/w blad?


Czy cos pominolem przy napisaniu 'skryptu gsmaster.php'?
piotrek
Wyślij im ten skrypt albo podaj linka do strony http://mapy.stron.pl/gsmaster_index.php niech sami sprawdzą i Ci dokładnie odpiszą co jest nie tak.

Napisz im przede wszystkim, że innym na innych serwerach skrypt POPRAWNIE DZIAŁA i to bez najmniejszych problemów. Przecież ten skrypt to najzwyklejsze PHP bez żadnych cudów na kiju.

Zapytaj też co jest grane z plikami *.ini, nie spotkałem się z serwerem który pozwalałby na dostęp do takiego pliku. Tym razem było to tylko zapytanie mysql a gdyby to był inny darmowy skrypt, który np. w pliku *.ini przechowywałby wazniejsze dane?

Saint
piotrek: mam takie pytanko jesli chodzi:

$this_url = "http://$_SERVER[SERVER_NAME]/twoj_plik.php?twoja_nazwa_parametru=$urls[id_postu]";


mam dwa parametry jesli chodzi o jezyk tj. nie wiiem czytak bedzie smigac dobrze a mianowicie:

$this_url = "http://$_SERVER[SERVER_NAME]/kid.php?lang=(tu albo pl albo en)&$urls[id_postu]";


Parametr jezyka nie idzie z bazy obisy sa zrobione w szablonie branym z htmla a dane poszczegolnych osob z bazy i tu zglupialem... mozesz cos poradzic? Chcialem zeby mi sie zindeksowaly dobrze zindeksowala polska czesc strony gdyz do tej pory mialem z tym problem bo mam automat do wykrywania jezyka uzytkownika wchodzacego, ktory automatycznie ustawia polska lub angielska czesc tylko problem byl w tym, ze G. wykrywane bylo jkako en i indeksowalo tylko czeesc angielska.

Co do home.pl zajelo im 2 dni dojscie do tego, ze parametr zapytania do bazy danych when musi byc byc 'when'. ale ogolnie wszystko smiga pytanie teraz co z tym jezykiem.
piotrek
ja bym zrobił dwie mapy, jedą nazwij kid_en, drugą kid_pl

dla kid_en zrób
$this_url = "http://$_SERVER[SERVER_NAME]/kid.php?lang=en&amp;id=$urls[kid_id]";


a dla kid_pl
$this_url = "http://$_SERVER[SERVER_NAME]/kid.php?lang=pl&amp;id=$urls[kid_id]";


to powinno rozwiązać problem, przecież obie wersje mają zostać zindeksowane z taką konstrukcją URLi


Oczywiście GSMaster potrafi także wykonać to zadanie zapisując urle en i pl w jednej mapie smile.gif pewnie da się to zrobić jeszcze prostszym zapisem ale za pomocą warunków if także działa
   $query = mysql_query("SELECT * FROM fk_kids");

   while($urls = mysql_fetch_assoc($query)) {

for ($i=1; $i<=2; $i++) {

if ($i==1) {$lang="pl";}
if ($i==2) {$lang="en";}
        
    $this_url = "http://$_SERVER[SERVER_NAME]/kid.php?lang=$lang&amp;id=$urls[kid_id]";

    $priority = "  <priority>0.8</priority>\n";
    $changefreq = "  <changefreq>daily</changefreq>\n";

    $output = " <url>\n  <loc>" . $this_url . "</loc>\n" . $changefreq . $priority . "</url>\n";
    $gout = fwrite( $gp , $output );

}    
}



ogolnie wszystko smiga

to super
Saint
piotrek: chodzilo mi wlasnie o zrobiene wszystkiego w jednym smile.gif to ta pierwsza opcja to odrazu przyszla mi do glowy ale bym sie po pewnym czasie pogubil w tym wszystkim.

jesli chodzi o te czesc to bedzie ten kawalek:

$query = mysql_query("SELECT * FROM fk_kid order by 'when' DESC limit 0,100");


W ten sposob moze byc?
piotrek
skoro pierwsza opcja odpada, użyj drugiej, w moim poście oprócz samego zapytania chyba wszystko jest dostosowane pod mapy dla fotokids

W ten sposob moze byc?

pewnie tak, sprawdź to się dowiemy smile.gif
Saint
piotrek: cos nie dziala z "wyczyść" pliku xml
piotrek
mógłbyś szerzej opisać co się dzieje - wyskakuje Ci jakiś error czy co, nie czyści pliku xml?

jeśli wyczyścisz xml to nie możesz go podglądnąć bo nie ma czego podglądać
jeśli masz stworzony plik zapytań ini to tez nie możesz podglądnąć pustego xml

pewnie masz zapytanie w ini więc naciśnij "wykonaj zapytanie i nadpisz plik xml" dopiero potem będziesz mógł podglądać plik xml
Saint
piotrek: zmienilem ini wg. twoich instrukcji niestety nie generuje mapy strony tj. generuje z glownym adresem. W miedzy czasie wkradl sie chochlik bo pomylilem 'kid_id' z 'id' bo 'kid_id' odnosi sie do panelu a 'id' do numeru postu czy artykulu, jak zwal tak zwlal.

oto jak wyglada ini ktory dalem do wykonania:

<?
   $query = mysql_query("SELECT * FROM fk_kid order by 'when' DESC limit 0,100");

   while($urls = mysql_fetch_assoc($query)) {
  
   for ($i=1; $i<=2; $i++) {

   if ($i==1) {$lang="pl";}
   if ($i==2) {$lang="en";}
              
       $this_url = "http://$_SERVER[SERVER_NAME]/kid.php?lang=$lang&id=$urls[kid]";

       $priority = "  <priority>0.8</priority>\n";
       $changefreq = "  <changefreq>daily</changefreq>\n";

       $output = " <url>\n  <loc>" . $this_url . "</loc>\n" . $changefreq . $priority . "</url>\n";
       $gout = fwrite( $gp , $output );
      
   }
}

?>


daje 'wykonaj zapytanie i nadpisz plik xml" zadnego bledu ale tez nie zmienia sie xml i nie ma opcji edytuj.
piotrek
dobra, poddaję się - wykonaj poniższy kod poza skryptem gsmaster i wystaw je na serwer w pliku /test.php

<?
mysql_connect("host", "user", "pass");
mysql_select_db("database");

$query = mysql_query("SELECT * FROM fk_kid order by 'when' DESC limit 0,100");

while($urls = mysql_fetch_assoc($query)) {
echo "$urls[kid]<br />";
}

?>



masz & a m p ; w urlach zamiast samego & ?
Saint
rece mi opadaj wypiepszam wszystko robie od nowa

dobra cos zmienilo cud jakis albo cos wink.gif, ale ...

Błąd parsowania XML: nieprawidłowo sformowany
Obszar: http://www.fotokids.ws/sitemap_kids.xml
Numer linii 4, kolumna 49:  <loc>http://www.fotokids.ws/kid.php?lang=pl&id=61</loc>


to pokazuje firefox

natomiast opera pokazuje ten sam blad z zaznaczonym na czerowono znakiem rownosci za id.

nadal nie ma mozliwosci edytuj pliku xml.
piotrek
bardzo słusznie

zacznij od stworzenia pliku php wg tego co Ci podałem umieść go na serwerze pod adresem http://www.fotokids.ws/test.php

bedziesz miał 100% pewności że mysql odpowiada poprawnie

zaraz, zaraz... wreszcie coś widać http://www.fotokids.ws/sitemap_kids.xml smile.gif

nie ma tylko w linkach id, może to pole jednak się inaczej nazywa w Twojej bazie?
Saint
Piotrek zobacz moj ostatni post. Teraz niby dobrze, ale skad ten blad?
piotrek
pisałem Ci ze dwa posty wyżej o & a m p ; w linku

zamiast
$this_url = "http://$_SERVER[SERVER_NAME]/kid.php?lang=$lang&id=$urls[id]";


masz mieć
$this_url = "http://$_SERVER[SERVER_NAME]/kid.php?lang=$lang&amp;id=$urls[id]";

Saint
piotrek: nie wiem co za cholera zapisuje po edycji ini dokladnie tak jak mowisz i wczesniej tak robilem ale otieram teraz i jest & zamiast & a m p;

piotrek
nie wiem co za cholera smile.gif ale za każdym razem jak podglądałem Twój *.ini to widziałem samo &

skrypt mnie nie przepisuje to i Tobie nie powinien
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-2012 Invision Power Services, Inc.
Promocja Stron - Dating