Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne]Jak stworzyć aplikację na facebook?
Forum PHP.pl > Forum > Przedszkole
binprogrammer
Witam. Stworzyłem całkiem fajną aplikacje w php, która by się nadawała na facebooka, i dlatego właśnie teraz miałem zamiar takie coś zrobić smile.gif

Stworzyłem aplikacje na facebooka, skonfigurowałem ją poprawnie i wgrałem pliki stąd: http://github.com/facebook/php-sdk/tarball/master

Następnie chciałem zrobić prostą aplikację testową czy mi wszystko dobrze działa:

  1. <?php
  2. require('facebook.php');
  3.  
  4.  
  5. $facebook = new Facebook(array(
  6. 'appId' => 'xxxxxxxxxxxxxxx',
  7. 'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  8. 'cookie' => true,
  9. ));
  10.  
  11. // pobieramy informacje o sesji
  12. $session = $facebook->getSession();
  13. $me = null;
  14. if ($session) {
  15. try {
  16. // pobieramy informacje o użytkowniku
  17. $uid = $facebook->getUser();
  18. $me = $facebook->api('/me');
  19. } catch (FacebookApiException $e) {
  20. error_log($e);
  21. }
  22. }
  23.  
  24. // zobaczmy jakie dane użytkownika dostaliśmy
  25. var_dump($me);
  26.  
  27. ?>


I teraz jest po włączeniu aplikacji jest puste tło. Coś źle robię? Dodam, że gdy dam na początek
  1. echo 'hello world';
lub jeszcze na sam początek - czyli 1 linia kodu
  1. hello world <jakis kod html>
to działa, jednak nie działają mi te informacje o użytkowniku itp. - a właśnie potrzebuję dostępu do imienia.

Hosting to onuse.pl, jednak jeszcze wcześniej na proserwer.pl wypluwało mi jakiś błąd o session coś... na lini 37 w facebook.php

To było to:

Kod
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/xxxx/public_html/gxxd/index.php:5) in /home/xxxx/public_html/gxxd/src/facebook.php on line 37

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/xxxx/public_html/gxxd/index.php:5) in /home/xxxx/public_html/gxxd/src/facebook.php on line 37

Fatal error: Call to undefined method Facebook::getSession() in /home/xxxx/public_html/gxxd/index.php on line 15

@kod - jeżeli chodzi o adres src/facebook.php to wtedy miałem kod dostosowany do tego,

Co poradzicie?
Pozdrawiam i proszę o jakiekolwiek pomysły.
erix
A próbowałeś wpisać treść tego błędu do wyszukiwarki...?

Było wiele razy.
binprogrammer
Próbowałem ale nie znalazłem nic konkretnego sad.gif
erix
Jak próbowałeś? Wpisałeś treść błędu?
binprogrammer
Tak wpisałem, ale podane tam rozwiązania nie zadziałały u mnie.

Wyszperałem, że musi być safe_mode = on w php.ini, jednak nadal nie działało :/ Co muszę zrobić, aby ładnie śmigało, bo głównie chodzi mi o napis w stylu "Cześć {Imie}"
erix
Safe-mode nie ma tu nic do rzeczy.

Pokaż, co robiłeś.
binprogrammer
Pisali, żebym session start na początek dał, ale przecież require('facebook.php'); musi być...
nie wiem, rozkladał ręce, bo nie miałem z tym większej styczności wcześniej... :/ sciana.gif
vieri_pl
A może:

- spróbuj dać ob_start() przed session_start()
- sprawdź czy facebook.php na pewno jest zapisany w kodowaniu UTF8 bez BOM i na pewno nie zawiera żadnych niepotrzebnych white-space, ewentualnie nie zwraca żadnego tekstu

Dlaczego nie możesz dać session_start() przed facebook.php?
binprogrammer
Dzięki, a co z tym?

Parse error: syntax error, unexpected T_REQUIRE_ONCE, expecting T_FUNCTION in /home/x/public_html/x/src/facebook.php on line 12

  1.  
  2. 6. public function __construct($config) {
  3. 7. if (!session_id()) {
  4. 9. }
  5. 10. parent::__construct($config);
  6. 11. }
  7. 12. require_once "base_facebook.php";
  8. 13. protected static $kSupportedKeys =
  9. 14. array('state', 'code', 'access_token', 'user_id');
  10.  
  11.  


Dobra, dzięki poradziłem sobie - zrobiłem od nowa aplikacje i działa.
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.