![]() |
![]() |
![]()
Post
#1
|
|
Administrator serwera Grupa: Przyjaciele php.pl Postów: 909 Pomógł: 0 Dołączył: 12.08.2003 Skąd: /var/www/wroclaw.php Ostrzeżenie: (0%) ![]() ![]() |
Funkcja łączy się z serwerem GG, loguje się na nim, pobiera opis dla podanego numeru i kończy połączenie. W przypadku powodzenia całości operacji funkcja zwraca opis. W przypadku niepowodzenia funkcja zwróci wartość "(bool) false" i w zmiennej podanej jako ostatni, czwaty argument umieści komunikat o błędzie jaki zaistniał.
Szczegóły parametrów do przekazania jak i wyniku działania funkcji znajdują się w jej komentarzu. Funkcja wymaga zdefiniowania stałych wartości używanych w protokole GaduGadu. Nie są one umieszczone w funkcji, by uniknąć komunikatu o błędzie ponownego deklarowania stałych w przypadku, gdy funkcja zostanie wywołana wielokrotnie w jednym skrypcie. Dwie uwagi końcowe: - ilość znaków jaka jest wycinana ze zwracanego opisu (ostatnia linijka funkcji) jest dobrana eksperymentalnie i jak narazie nie znalazłem innego lepszego) rozwiązania na pozbycie się znaków znajdujących się na początku zwracanego przez serwer wyniku. - Funkcja nie jest przystosowana do odbioru wielu statusów w jednym połączeniu. By ją do tego przystosować należy odpowiednio zmienić wywołanie funkcji (np. przekazać tablicę z numerami, a nie wartość INT i w linii 126 zmienić format pakietu zgodnie ze specyfikacją dostępną na stronie projektu EKG ( http://dev.null.pl/ekg/docs/protocol.html#ch1.11 ) (Kod wydzielony z tematu Skrypty do generowania sygnaturek, na grafikach)
UpDated (07.10.2004 01:07): Zmieniłem "return substr($status_kontaktu, 15);" na nieco bardziej zaawansowany i skuteczny sposób wycinania niechcianych znaków... Dzięki temu opisy nie są ucinane i nie zawierają śmieci... UpDated (08.02.2005 14:45): Coraz częściej dostaje PW o sposób użycia, więc... Sposób użycia - wyświetlenie opisu numeru 1234567 (nasz numer to 2358764, a haslo to: zxcdews):
UpDated (10.02.2005 04:31): Status wyświetlany jest bez żadnych krzaków - zmianie uległ sposób wyciągania opisu z pakietu odbieranego z serwera... UpDated (10.02.2005 05:16): Zoptymalizowałem wyciąganie opisu z pakietu do 1 polecenia unpack... |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 12.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
Żeby skrypt działał poprawnie, trzeba włączyć dyrektywę allow_url_fopen. Niestety, nie można tego zrobić poprzez php_ini() i trzeba ustawić to w pliku konfiguracyjnym php.ini lub httpd.conf. Jeśli korzystacie z jakiegoś darmowego konta, to nici - trzeba pogadać z adminem.
Oczywiście, może to być jeden z powodów. Żeby w ogóle sprawdzić, czy na tym polega problem, można wywołać funkcję phpinfo() i sprawdzić wartość allow_url_fopen, ewentualnie skorzystać z ini_get() PS. Dotyczy to z pewnością tego sposobu przy pobieraniu statusu i używaniu własnych grafik. Nie wiem co z tym na początku tematu - czy tam też jest ten sam problem czy nie; nie testowałem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Ten post edytował Raynold 9.01.2007, 05:25:33 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 08:49 |