cURL: rozwiązanie problemu z CURLOPT_FOLLOWLOCATION

curllogocURL to biblioteka, tak zwany klient HTTP, z ogromnymi możliwościami. Jedną z nich jest możliwość podążania za przekierowaniami zawartymi w nagłówkach odpowiedzi serwera.
Służy do tego opcja CURLOPT_FOLLOWLOCATION, włącza się ja w następujący sposób:

curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, true);

Niestety, jeśli na serwerze włączone są elementy zabezpieczeń serwera PHP: safe_mode lub open_basedir opcja ta jest niedostępna.
Continue reading

Sitemap Generator – generowanie mapy strony

sitemapW 2005 roku Google opublikowało protokół pozwalający twórcom stron przygotowywać mapy stron. Są to pliki XML zawierające linki do wszystkich podstron witryny, datę ostatniej ich modyfikacji, ważność oraz częstotliwość z jaką roboty indeksujące mają ją odwiedzać. W ten sposób autorzy witryn mają wpływ na to, jakie treści ze strony znajdą się w wyszukiwarce. Wyszukiwarkom pozwala to na inteligentniejsze i szybsze indeksowanie. Tak przygotowane mapy można zgłaszać, nie czekając aż robot odwiedzi naszą stroną kolejny raz. Dzięki temu, nasz nowy artykuł na blogu, czy post na forum będą szybciej widoczne w wynikach wyszukiwania.

Ręczne tworzenie plików map w przypadku dynamicznych stron jest praktycznie niemożliwe i mija się z celem. Jakiś czas temu stanąłem przed takim problemem. Ponieważ nie mogłem znaleźć gotowego rozwiązania które spełniałoby moje oczekiwania, napisałem klasę realizującą to zadanie.

Continue reading

Pobieranie id dodanego rekordu w MySQL, Oracle i PostgreSQL

Pola typu autoincrement, serial czy sekwencje w bazach danych bardzo dobrze spełniają swoją rolę.
Pomagają i ułatwiają życie programiście. Często zdarza się jednak tak, że potrzebujemy id właśnie wstawionego rekordu. Np. jako klucza obcego przy wstawianiu rekordu do innej tabeli.
Bazy danych
Opiszę metody na pobranie id w bazach MySQL, Oracle oraz PostrgeSQL, przykłady stworzę w PHP.

Continue reading