←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

PHP
Face Book!

Zablokowany

  • +
  • -
FzN - zdjęcie FzN 05.03.2011

Witam, potrzebuję takiego nie wiem jak to nazywać i ogólnie wgrać, więc potrzebuję waszej pomocy chodzi mi o to żeby wrzucić na moją stronę takę coś od Face Book'a jak widnieje na waszej stornie, po prawej stronie okna!

To chyba jest PHP nie jestem pewien!
Odpowiedz

  • +
  • -
rS. - zdjęcie rS. 05.03.2011

Podstawowa aplikacja składa się z trzech części: obiektu div o ID "fb-root", zewnętrznego obiektu script linkującego bibliotekę oraz drugiego obiektu script z metodą inicującą FB.init() i resztą kodu. Facebook zaleca umieścić kod tuż przed tagiem </body>. Według dokumentacji (http://developers.fa...script/fb.init/) najczęściej wywoływane parametry metody init() to:

  • appId - identyfiaktor aplikacji, który odczytamy w ustawieniach aplikacji
  • status - sprawdza status logowania
  • cookie - daje serwerowi dostęp do informacji o sesji przez ciasteczka
  • xfbml - parsuje język XFBML

Dołączona grafika

Wszystkie parametry są opcjonalne, a typowy kod ma postać taką jak poniżej. Pozwala użytkownikowi połączyć się z aplikacją za pomocą konta Facebooka. Jeśli chcemy zmienić język elementów, które wywołamy z biblioteki (np. okien dialogowych), należy zmienić ustawienia języka w adresie. Dla angielskiego będzie to en_US.

1. <div id="fb-root"></div>
 2.  <script src="http://connect.facebook.net/pl_PL/all.js"></script>
 3.  <script>
 4.    FB.init({
 5.      appId  : '123456789012345',
 6.      status : true,
 7.      cookie : true,
 8.      xfbml  : true  
 9.    });
10.  </script>

  • SDK można wywołać asynchronicznie, ale żeby nie zaciemniać obrazu nie będziemy tego robić. Wyjaśniono to w sekcji "Loading the SDK Asynchronously" dokumentacji (http://developers.fa...ascript/FB.init)

Podstawowa aplikacja, uruchomiona w debuggerze (który oczywiście sam jest aplikacją FB) powinna wyglądać podobnie jak na zrzucie ekranu poniżej. Uruchamiamy ją kiedy zapiszemy kod i klikniemy "Run Code". Przyciski znajdujące się na górze pozwalają zalogować i wylogować się z aplikacji debuggera, nie naszej!

Dołączona grafika


JavaScript SDK umożliwia łatwe tworzenie okien dialogowych Facebooka. Aby użytkownik mógł zalogować się do naszej aplikacji, musimy skorzystać z metody FB.login(). Metoda ma dwa parametry: obowiązkową funkcję wywoływaną po udanym logowaniu i opcjonalny obiekt zawierający oddzielone przecinkiem opcje modyfikujące zachowanie okna logowania, które np. proszą o udostępnienie danych osobowych użytkownika. My ograniczymy się do podstawowego okna. Dodatkowe parametry opisano w dokumentacji (http://developers.fa...on/permissions/)

Jako że przeglądarki zwykle blokują wyskakujące automatycznie okna, okno logowania powinno aktywować się po kliknięciu w przycisk. W obiekcie div odpowiadającym za interfejs aplikacji powinniśmy więc umieścić przycisk:
{html}<button id="fb-login">Zaloguj się do mojej aplikacji!</button>{/html}

W sekcji logicznej umieszczamy skrypt wykorzystujący SDK do wywołania okna logowania.
{html}<button id="fb-login">Zaloguj się do mojej aplikacji!</button>{/html}

Skrypt wyszukuje w dokumencie elementu o ID "fb-login" i dodaje akcję wyzwalaną kiedy klikniemy na znaleziony element. Metoda FB.login() wywoływana jest z jednym parametrem, funkcją response, która od razu zostaje zadeklarowana. Między klamerkami powinniśmy umieścić kod funkcji, na przykład zapisanie logu.

Dołączona grafika


Nasza aplikacja jest już tak dobra, że możemy pokazać ją światu. Wykorzystamy do tego metodę FB.ui(), która wywoła okno dialogowe Send to Many. Służy ono do wysyłania zaproszeń do aplikacji znajomym. Kiedy użytkownik kliknie w kolejny przycisk pojawi się okno do zapraszania znajomych. Dodajemy więc kolejny przycisk do interfejsu aplikacji:
{html}<button id="send-to-many">Send to Many</button>{/html}

W rzeczywistości powinien pojawić się on dopiero po zalogowaniu, ale znowu nie chcemy zaciemniać kodu. Do skryptu dodajemy natomiast kod:
1. document.getElementById('send-to-many').onclick = function() {
2.   FB.ui({
3.     method: 'apprequests',
4.     message: 'Hello, Facebook JavaScript SDK!',
5.   });
6. }
7. };

Tak jak poprzednio dodajemy nowemu przyciskowi akcję wywoływaną po kliknięciu. Mianowicie, wywołujemy metodę FB.ui() z jednym parametrem składającym się z tablicy asocjacyjnej. Wymagany klucz method opisuje nazwę okna dialogowego jakie ma zostać wywołane i przyjmuje wartość "apprequests", która oznacza, że wywołamy okno wysyłania zaproszeń do znajomych. Inne okna dialogowe opisano w sekcji Dialogs dokumentacji (http://developers.fa...erence/dialogs/). Wartość klucza message odpowiada informacji, jaką użytkownik wysyłający zaproszenia zobaczy w oknie dialogowym. Odbiorca zaproszenia nie zobaczy tej wiadomości. Inne okna dialogowe przyjmują inne parametry.

Dołączona grafika

Cała gotowa aplikacja:
1. <html>
 2. <head>
 3. <meta charset="UTF-8" />
 4. </head>
 5. <body>
 6.  <div id="fb-root">
 7.    <button id="fb-login">Zaloguj się do mojej aplikacji!</button>
 8.   <button id="send-to-many">Wyślij do wielu</button>
 9.  </div>
10.  <script src="http://connect.facebook.net/pl_PL/all.js"></script>
11.  <script>
12.    FB.init({
13.      appId  : '123456789012345',
14.      status : true,
15.      cookie : true,
16.      xfbml  : true  
17.    });
18.  
19. document.getElementById('fb-login').onclick = function() {
20.   FB.login(function(response) {});
21.  
22. document.getElementById('send-to-many').onclick = function() {
23.   FB.ui({
24.     method: 'apprequests',
25.     message: 'Hello, Facebook JavaScript SDK!',
26.   });
27. }
28. };
29.  </script>
30. </body>
31. </html>

Naszą aplikację możemy rozszerzyć wykorzystując między innymi następujące metody:



Autor Marcin Kosedowski
Odpowiedz

  • +
  • -
FzN - zdjęcie FzN 06.03.2011

Mi chodzi o to boczną wecję F-B! Tak jak u was na stronie widniej!
Odpowiedz

  • +
  • -
Knopers - zdjęcie Knopers 06.03.2011

Prawy przycisk myszy -> Wyświetl źródło strony .
Wszystko jest oparte na JS, stylu CSS oraz podajże 2 div'ach :unsure:
Ale bez kopiowania proszę <_<
Odpowiedz

  • +
  • -
;(( - zdjęcie ;(( 06.03.2011

global.css

#facebook
{
    width:272px;
    height:370px;
    position: fixed;
    top: 300px;
    right: 1230px;
    overflow: hidden;
    z-index:999;
}

#facebook iframe
{
    float: left;
}

#facebook img
{
    float: right;
    cursor: pointer;
}

header
(tutaj nie trzeba było nic zmieniać):

<div id="facebook">
    <img src="images/facebook_like_left.png" />
    <iframe src="http://www.facebook.com/plugins/likebox.php?id=185527904813024&amp;width=238&amp;connections=12&amp;stream=false&amp;header=false&amp;height=370" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:238px; height:370px;background:#FFF;" allowTransparency="false"></iframe>
</div>

Niezgrupowane szablony/headerinclude:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.2/prototype.js"></script>
    <script type="text/javascript" src="http://click-jpa-demo.googlecode.com/svn-history/r12/trunk/war/click/prototype/effects.js"></script>
<script type="text/javascript">
    var animating = false,
        effect_in = false,
        effect_out = false;
        
    Event.observe(window, 'load', function()
        {
            Event.observe($('facebook'), 'mouseover', function()
            {
                if( typeof effect_out == 'object' )
                {
                    effect_out.cancel();
                }
                effect_in = new Effect.Morph('facebook',
                    {
                        style: {
                            left: '0px'
                        },
                        transition: Effect.Transitions.spring
                    }
                );
            });
            
            Event.observe($('facebook'), 'mouseout', function()
            {
                
                if( typeof effect_in == 'object' )
                {
                    effect_in.cancel();
                }
                effect_out = new Effect.Morph('facebook',
                    {
                        style: {
                            left: '-240px'
                        },
                        transition: Effect.Transitions.spring
                    }
                );
            });
        }
    );
</script>

obrazek:

Dołączona grafika

do folderu images

by adam-as

będzie po lewej stronie
Użytkownik DAMIANq edytował ten post 06.03.2011 17:51
Odpowiedz

  • +
  • -
mgr inż. Pavulon - zdjęcie mgr inż. Pavulon 06.03.2011

[warn=Pavulon]Proszę o niekopiowanie mi okienka facebook z tego forum. To, że źródło jest dostępne nie znaczy, że możecie używać tego kodu gdzie chcecie.[/warn]
Odpowiedz

  • +
  • -
;(( - zdjęcie ;(( 06.03.2011

Pavulon, to co podałem widziałem w poradnikach na forum o mybb
Użytkownik DAMIANq edytował ten post 06.03.2011 19:01
Odpowiedz

  • +
  • -
rS. - zdjęcie rS. 06.03.2011

Pavulon, to co podałem widziałem w poradniku o forach myBB


Dziwne aby było inaczej jak działa to w ten sam sposób,
Pavulon mówi o tym co jest na amxx a nie na myBB
Odpowiedz
Zablokowany