Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Opcja logowania facebook na stronie
Forum PHP.pl > Forum > Przedszkole
nikestylex7
Witam Wszystkich. Walczę z implementacją facebooka na stronie. Nie rozumiem w ogóle tego działania.
Mianowicie chciałbym aby :
- osoba klika zaloguj
- potwierdza skorzystanie z aplikacji
- musi polubić stronę aby się zalogować (komunikat zaraz po potwierdzeniu z przyciskiem lubie to)
- do bazy zostają dodane dane żeby w przyszłości sprawdzać i nie musieć dodawać ich ponownie
- użytkownik powraca na stronę głowną już zalgowany
- chciałbym też się dowiedzieć czy mogę jakoś wykorzystać znajomwych osób które się logują i pozwalają na korzystanie z tego
- chciałbym też się dowiedzieć czy łączy się jakoś aplikacje logowanie ze stroną stworzoną na facebooku ponieważ fanpage już powiązałem

Może znacie jakieś manuale.
Btw aplikacje już stworzyłem chciałbym tylko pomocy jak ją dodać. Ściągnałem też bibliotekę php sdk.
KR2615
Cytat(nikestylex7 @ 16.04.2014, 13:06:32 ) *
Btw aplikacje już stworzyłem chciałbym tylko pomocy jak ją dodać. Ściągnałem też bibliotekę php sdk.

Połowa roboty za Tobą. Sprawdzenie czy użytkownik jest zalogowany, przerzucenie go na stronę aplikacji itp to kilka lini kodu. Znajdzisz go w przeróznych tutorialach.

Aby sprawdzić, czy user lubi Twoja strone uzyj FQLa:
  1. SELECT uid FROM page_fan WHERE uid=".$user[id]." AND page_id=14483036020666666"

Gdzie oczywiście musisz wstawić ID swojej aplikacji.

Reszta to odpowiednie zapytania do Twojej bazy, np. dodawanie nowego usera jesli rekord nie istnieje.
nikestylex7
Poradziłem sobie. Loguje się jest na stronie witaj Patryk. Użytkownik jest zalogowany na podstawie sesji. Widziałem gdzieś że żeby najpierw pozwolić aplikacji na udostepnienie naszych danych wyskakuje podobne okienko facebookowe i trzeba kliknac lubie to kojarzy ktoś takie coś?

Może macie jakieś swoje sposoby na takie pytanie?

Coś z tymi sesjami mi nie działa mianowicie chciałem zrobić tak że użytkownik jak się zaloguje zmienna przybiera jego imie i jest pkazywane na głównej. Nie wiem gdzie dokładnie zrobić to przypisywanie zmiennej i unset mam bibliotekę fb wrzuconą a skrypt taki:

  1. <?php
  2. require_once 'php-sdk/src/facebook.php';
  3.  
  4. $config = array();
  5. $config['appId'] = 'xxxxxxxxxxxxyyyyyyyyyzzzzzzzzz';
  6. $config['secret'] = 'xxxxxxxxxxxxyyyyyyyyyzzzzzzzzz';
  7.  
  8. $fb = new Facebook($config);
  9.  
  10. if ($fb->getUser())
  11. { // sprawdza czy zalogowany
  12. $user = $fb->api('me');
  13. echo 'Jesteś zalogowany jako '.$user['name'].' <a href="' . $fb->getLogoutUrl() . '">Wyloguj się przez Facebook</a>';
  14. }
  15. else
  16. {
  17. $params = array(
  18. 'scope' => 'email',
  19. 'redirect_uri' => 'http://moja-strona.pl/'
  20. );
  21. echo 'Brak dostępu do danych. <a href="' . $fb->getLoginUrl($params) . '">Zaloguj się przez Facebook</a>';
  22. }
  23. ?>
KR2615
  1. var_dump($user)

W tej tabloicy masz całe mnóstwo ciekawych informacji które użytkownik Ci udostępnia
nikestylex7
hmm chce wyciągnąć tylko miasto lecz po podaniu
  1. <?php echo $user_profile = $user_profile['location']['name']; ?>

Dostaje miasto,województwo Jakiś pomysł?
KR2615
substringiem je potraktuj
nikestylex7
w php substr trzeba podawać długość,a tak naprawdę nie wiem jaką długość będą miały miasta innych osób myślę nad czymś co zrobi to do przecinka

  1. <?php echo $user_profile = $user_profile['hometown']['name']; ?>


kurde pogubiłem się...

Może ktoś mi krok po kroku napisać gdzie i co mam umieścić ?

mam oprócz swojej strony podfolder /fb/login/ gdzie jest biblioteka sdk facebook

Chciałbym na swojej stronie w głównym katalogu umieścić przycisk Zaloguj za pomocą facebooka i Wyloguj lecz do użytkownika ma być też dopisana zmienna $_SESSION['moto']
i podczas wylogowania ma ona zostać unset'owana smile.gif

Jakieś przykłady 2 dni używam przykładów z internetu lecz zawsze coś niedziała...

Dziękuje za pomoc
KR2615
Kurcze blade, prawie 350 postów a takich podstaw nie znasz? strpos ustalasz gdzie znajduje się przecinek, potem odcinasz to co przed nim (0 do strpos) alo po prostu explode bo raczej przecinek w nazwie miasta sie nie pojawi.

Wiecej nie potrafie ci pomoc bo to wszystko co chcesz osiagnac mozna zrobic majac podstawy PHP. I tak dalem ci juz kilka gotowych przykladow. Nie obrazilbym sie, gdybys kliknal pomogl wink.gif
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.