Autor Zpráva
Neuwirth
Profil
Dobrý den,
potřebuji poradit kde dělám chybu nebo co chybí v aplikaci, kterou nyní dělám pro své stránky na facebooku.

Mám vytvořenou aplikaci včetně její implementace na facebooku, ale ja statická tzn. kromě href odkazů na ní nic zvláštního není.

Chci však udělat příkaz, který uživateli (nefanouškovi) po příchodu do aplikace ukáže, že není fanoušek a jediné co se mu zobrazí bude nějaké pozadí (obrázek) a určitý počet fanoušku+tlačítko "LIKE" (tzv.facebookové pluginy, ale ty nyní neřeším) to bude předstránka aplikace upozorněním, že není fanoušek pro vstup do aplikace se musí stát fanouškem.

Klikne na "like" a ukáže se mu 1.strana aplikace, kde bude úvod+tlačítko vstoupit. Klikne na vstoupit a zobrazí se mu popup okno s tím že facebook vyžaduje některé informace z profilu (hlavně mail). klikne na OK

Ocitne se v aplikaci a tady už to je klasická aplikace, s tím Vás nebudu zatěžovat.

Již několik dní zkouším různé postupy z ofic. developer/facebook blogu, ale nemohu se nikam dostat. Stáhl jsem si knihovnu PHP SDK na github.com/facebook... a ve ftp jsem si do adresáře kde mám danou aplikaci vložil 3 soubory ze .src složky. Tady nevím zda stačí tyto soubory do složky kde je aplikace jenom vložit nebo musím udělat něco dalšího, případně obsah do aplikace překopírovat.

níže je kód a obrázek (podle něho jsou v kodu názvy obrázku) v anglickém jazyce o co mi jde:

V samotné aplikaci jsem do těla kodu vložil:

<html>
<body>

<?php
require 'facebook-php-sdk/facebook.php';

$facebook = new Facebook(array(
  'appId'  => '111111111111111',
  'secret' => '2222222222222222222',
));

$signed_request = $facebook->getSignedRequest();

?>

<?php
if ( $signed_request['page']['liked'] ) 
{
            header( 'Location: http://www.domena.cz/' ) ;
     
}
else  
{
  echo '<img src="IMG1.jpg">';
}
?>


  <img src="IMG_1.jpg" class="img1">
    <img src="LikeMe.jpg" class="likeme">
    <img src="IMG_2.jpg" class="img2">

.img1 {position:relative; display:block; z-index:0}
.img2 {position:relative; display:none;}
.likeme {position:relative; display:block; z-index:10;} 


<script type="text/javascript"> // Using jQuery here
$('likeme').click(function(){

$(this).hide(); // Hide the likeme img
$('.img1').hide(); // Hide img 1
$('.img2').show(); // Show img 2

    setTimeout(function(){


},3000); 

});

</script

<a href=...
zbytek aplikace

</body>
</html>



Po zobrazení aplikace se mi objeví bílé pozadí bez ničeho ( zkoušel jsem i samotný php kód ale taky nic) nebo po malých úpravach vyskočí na bíle pozadí Warning: nelze načíst: require 'facebook-php-sdk/facebook.php';

Mockrát děkuji za rady, případně postup opravdu už nevím jak postupovat nebo co dělám špatně, chci jenom zdokonalit své stránky kvůli fanouškům.
PecanCZ
Profil
možná to s tím nebude souviset, ale bacha na neukončené uvozovky: <img src="LikeMe.jpg" class="likeme">
Neuwirth
Profil
Jo díky, ale stejně jsem to zkoušel i bez té poslední vsuvky a furt to nejde

Edit. Uvozovka doplněna
Majkl578
Profil
Problém bude nejspíš v části, kterou jsi nás nechtěl zatěžovat.
Ověření, zda uživatel stránku již lajknul nebo ne je správné (ale pozor, funguje pouze pokud je aplikace v módu záložky stránky, nikoliv v canvas verzi). Pro samotné lajknutí jsi povinen použít Facebook Like Box (HTML5 verzi), který stránku přenačte ve chvíli, kdy na něj uživatel klikne.
Neuwirth
Profil
Tak odstranil jsem celou tu část aplikace a nechal jenom ten kod co jsem tady dal. Upravil jsem par drobnosti aby to fungovalo podle toho jsem měl doplnit a nejde to, použil Like Box a nejde to,vypadá to takto pro ukazku. Ty vygumované části jsou APP ID a APP secret



Nevím proč, ale like box v HTML5 mi nejde, u jiné aplikace jsem dával iframe verzi ta fungovala, ale tady nefunguje.

Jde to ověření a přesměrování udělat jinak než přes PHP?

Edit: Přesunul jsem like box v iframe verzi před php vsuvku a zobrazuje se správně nicméně zbytek je stále viz obrázek
Neuwirth
Profil
Dobrý den,
prosím Vás v čem je tady chyba? nevím si rady proč to nefunguje, když je cesta v řádku č.3 spravně.

cesta k souboru facebook.php je: tst/facebook.php nebo plná adresa je domena.cz/tst/facebook.php

<?php
//Get PHP SDK
require_once 'tst/facebook.php';
// Create our Application instance.
.
.
.
.
celý kód snad není nutný když se to sekne na 3. řádku

Warning: require_once(): Unable to access tst/facebook.php in /DISK2/WWW/domena.cz/www/tst/index.php on line 3
Warning: require_once(tst/facebook.php): failed to open stream: No such file or directory in /DISK2/WWW/domena.cz/www/tst/index.php on line 3 Fatal error: require_once(): Failed opening required 'tst/facebook.php' (include_path='.:/usr/local/lib/php') in /DISK2/WWW/domena.cz/www/tst/index.php on line 3


Děkuji moc :)
Majkl578
Profil
Chybová hláška to říká zcela jasně, soubor neexistuje.
Neuwirth
Profil
Existuje, když jsem ji nahrával do několika složek. Tam je problém s cestou, už jsem našel na netu podobné problémy, ale řešení nemá nikdo.


***
***
***
Jsem ochotný se s někým domluvit na konzultaci a za rozumnou částku zaplatit, abych celou situaci s mým úplně prvním požadavkem vyřešil. Nechci celou aplikaci pouze několik vsuvek. Pokud má někdo zájem tak zde napište a dám email

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0