Ayuda facebook api

  • Autor Autor D3SL1
  • Fecha de inicio Fecha de inicio
D

D3SL1

Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola, solo quería pedir un poco de ayuda en esto: No reconoce que la sesión ha iniciado, no se como explicarlo mas de esa manera, que apretó al botón "Iniciar sesión", re carga la página y no pasa nada. Cabe aclarar que ayer me funcionaba...
Les dejo con el código, no hace falta que les pase el css y el js porque ahí no hay nada importante.

index.php:
HTML:
<?php
require('nuke.php');
$nuke = new nuke;

$chat['name'] = 'Test';
// Nos deslogueamos
if(isset($_GET['logout'])) {
	$parametros_cookies = session_get_cookie_params(); 
	setcookie(session_name(),0,1,$parametros_cookies["path"]);
	session_destroy();
	header('Location: '.$nuke->site['url']);
}

?>
<!doctype html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title><?=$chat['name']?> - <?=$nuke->site['name']?></title>
<link href="<?=$nuke->site['url']?>/favicon.ico" rel="shortcut icon" type="image/x-icon">
<link href="<?=$nuke->site['url']?>/style.css" media="screen" rel="stylesheet" type="text/css">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script>
<script src="<?=$nuke->site['url']?>/main.js" type="text/javascript"></script>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
      window.fbAsyncInit = function() {
        FB.init({
          appId      : '<?php echo $nuke->facebook->getAppID() ?>',
          xfbml      : true,
          version    : 'v2.3'
        });
      };

      (function(d, s, id){
         var js, fjs = d.getElementsByTagName(s)[0];
         if (d.getElementById(id)) {return;}
         js = d.createElement(s); js.id = id;
         js.src = "//connect.facebook.net/es_LA/sdk.js";
         fjs.parentNode.insertBefore(js, fjs);
       }(document, 'script', 'facebook-jssdk'));
});
</script>
<div id="fb-root"></div>
<div class="js-ember-loading-screen loading-screen hidden">
	<div class="twitch-logo">
	</div>
</div>
<div class="ember-view ember-chat-container">
	<div class="ember-view ember-chat roomMode">
		<?php 
		if ($nuke->facebook->getUser()) {
		?>
		<div class="chat-header">
			<a title="Ver todas las salas" class="button glyph-only left tooltip">
			<svg class="svg-roomlist" height="16px" version="1.1" viewbox="0 0 16 16" width="16px" x="0px" y="0px">
				<path clip-rule="evenodd" d="M1,13v-2h14v2H1z M1,5h13v2H1V5z M1,2h10v2H1V2z M12,10H1V8h11V10z" fill-rule="evenodd"></path>
			</svg>
			</a>
			<p class="room-title">
				<a href=""><?=$nuke->CallFB['name']?></a> - <?=$chat['name']?>
			</p>
		</div>
		<div class="ember-view">
			<div class="notification-container">
				<div class="top-notification room-invitation">
					<p class="invited">
						 invited you to join
					</p>
				</div>
			</div>
		</div>
		<div class="chat-room-list chat-menu">
			<div class="all-rooms-header">
				<p class="float-left">
					<?=$nuke->CallFB['name']?> <?=$nuke->CallFB['id']?>
				</p>
				
				<a class="button glyph-only float-right create tooltip" title="Crear un chat" data-bindattr-465="465" data-ember-action="466">
				<svg class="svg-plus" height="16px" version="1.1" viewbox="0 0 16 16" width="16px" x="0px" y="0px">
				<path clip-rule="evenodd" d="M15,9H9v6H7V9H1V7h6V1h2v6h6V9z" fill-rule="evenodd"></path>
				</svg>
				</a>
			</div>
			<div class="js-rooms scroll chat-rooms"<?php if (!$nuke->facebook->getUser()) {?> style="top:10px"<?php } ?>>
				<div class="tse-scroll-content">
					<div class="tse-content">
						<?php 
						$true = true;
						if ($true) {
						?>
						<div class="list-header first">
							<p>Chat oficial</p>
						</div>
						<div class="room">
							<p class="room-title"><?=$chat['name']?></p>
							<div class="ember-view">
								<span class="unread-count pop">15</span>
							</div>
				
						</div>
						<div class="list-header">
							Chats de usuarios
						</div>
						<ul class="room-list">
						<li class="room removable">
							<p class="room-title">sida</p>
							<a class="leave-chat">
								<svg class="svg-close_small" height="16px" version="1.1" viewBox="0 0 16 16" width="16px" x="0px" y="0px">
									<path clip-rule="evenodd" d="M12.657,4.757L9.414,8l3.243,3.242l-1.415,1.415L8,9.414l-3.243,3.243l-1.414-1.415L6.586,8L3.343,4.757l1.414-1.414L8,6.586l3.242-3.243L12.657,4.757z" fill-rule="evenodd"></path>
								</svg>
							</a>
						</li>
						<li class="room removable">
							<p class="room-title">sida</p>
							<a class="leave-chat">
								<svg class="svg-close_small" height="16px" version="1.1" viewBox="0 0 16 16" width="16px" x="0px" y="0px">
									<path clip-rule="evenodd" d="M12.657,4.757L9.414,8l3.243,3.242l-1.415,1.415L8,9.414l-3.243,3.243l-1.414-1.415L6.586,8L3.343,4.757l1.414-1.414L8,6.586l3.242-3.243L12.657,4.757z" fill-rule="evenodd"></path>
								</svg>
							</a>
						</li>
							<!--<p class="no-content">
								No hay chats de grupo.
							</p>-->
						</ul>
						<div class="list-header">
							Opciones
						</div>
						<ul class="room-list">
						<li class="room removable">
							<p class="room-title" onclick="location.href='<?=$nuke->facebook->getLogoutUrl(array('next'	=> $nuke->site['url'].'/?logout'));?>'">Salir</p>
						</li>
							<!--<p class="no-content">
								No hay chats de grupo.
							</p>-->
						</ul>
						<?php } else { ?>
						<div class="no-login-contain">
							<h3>&iexcl;No has iniciado sesi&oacute;n!</h3>
							<p>
								Si a&uacute;n no dispones de una cuenta, an&iacute;mate e inscr&iacute;bete. Tardar&aacute;s un par de segundos &iexcl;y vaya que si merece la pena!
							</p>
							<ul>
								<li>Sigue los canales que te guste ver</li>
								<li>Recibe avisos cuando empiecen a emitir</li>
								<li>Chatea con los dem&aacute;s espectadores</li>
								<li>Crear y unirse a chats de grupo</li>
								<li>Inicia tu propia retransmisi&oacute;n</li>
							</ul>
							<a class="button primary" href="<?=$Log['url']?>"><?=$Log['text']?></a>
						</div>
						<?php
						}
						?>
					</div>
				</div>
			</div>
		</div>

		<div class="chat-room">
			<div class="ember-view">
				<div class="scroll chat-messages js-chat-messages hideTimestamps hideModIcons">
					<div class="tse-scrollbar" style="display: block;">
						<div class="drag-handle visible" style="top: 128px; height: 289px;">
						</div>
					</div>
					<div class="tse-scroll-content" style="right: 0px; width: 400px; height: 419px;">
						<div class="tse-content">
							<ul class="chat-lines">
								<!--<li id="ember698" class="ember-view chat-line admin">
								<div class="indicator">
								</div>
								<span class="timestamp float-left">5:14</span><span class="badges float-left"></span><span class="from" style="color:#DAA520">Jtv</span><span class="colon">:</span><span class="message" style="undefined">Welcome to the chat room!</span>
								</li>100003266465558-->
								

								

							</ul>
						</div>
					</div>
				</div>
				<div class="notification-container new-interactions-exist ontop">
					<div class="top-notification game-commands-notification">
						<p>
							Interactions available
						</p>
					</div>
				</div>
				<div class="notification-container ontop">
					<div class="top-notification resub-notification">
						<div class="button primary">
							 Compartir
						</div>
					</div>
				</div>

				<div class="chat-interface">
					<div class="textarea-contain">
						<div class="ember-view">
							<textarea class="ember-view ember-text-area mousetrap" placeholder="Enviar un mensaje"></textarea>
						</div>
						<a class="emoticon-selector-toggle">
							<svg class="svg-emoticons" height="18px" version="1.1" viewbox="0 0 18 18" width="18px" x="0px" y="0px">
							<path clip-rule="evenodd" d="M9,18c-4.971,0-9-4.029-9-9s4.029-9,9-9s9,4.029,9,9S13.971,18,9,18z M14,4.111V4h-0.111C12.627,2.766,10.904,2,9,2C7.095,2,5.373,2.766,4.111,4H4v0.111C2.766,5.373,2,7.096,2,9s0.766,3.627,2,4.889V14l0.05-0.051C5.317,15.217,7.067,16,9,16c1.934,0,3.684-0.783,4.949-2.051L14,14v-0.111c1.234-1.262,2-2.984,2-4.889S15.234,5.373,14,4.111zM11,6h2v4h-2V6z M12.535,12.535C11.631,13.44,10.381,14,9,14s-2.631-0.56-3.536-1.465l0.707-0.707C6.896,12.553,7.896,13,9,13s2.104-0.447,2.828-1.172L12.535,12.535z M5,6h2v4H5V6z" fill-rule="evenodd"></path>
							</svg>
						</a>
					</div>
					<div class="ember-view ember-emoticon-selector emoticon-selector">
						<div class="emoticon-selector-box not-subscribed dropmenu">
							<div class="emotes channel-emotes hidden">
								<div class="emoticon-grid"> </div>
								<div class="subscribe-message">
									<div id="non-subscriber-message">
										<span class="unlock-text">Suscríbete para desbloquear emoticonos</span>
										<a class="action subscribe-button button primary">
											<span class="subscribe-text">Suscribirse</span>
											<span class="subscribe-price"></span>
										</a>
									</div>
								</div>
							</div>
							<div class="emotes all-emotes">
								<div class="emoticon-grid">
									<div class="emote-set">
										<span class="emoticon tooltip" title="Volcania" style="background-image: url(&quot;http://static-cdn.jtvnw.net/emoticons/v1/166/1.0&quot;)"></span>
									</div>
								</div>
							</div>
							<div class="tabs">
								<span class="tab channel">Channel</span>
								<span class="tab all active">All</span>
							</div>
						</div>
					</div>
					<div class="ember-view">
						<div class="js-chat-settings chat-settings chat-menu dropmenu">
							<div class="list-header first">
								 OPCIONES DEL CHAT
							</div>
							<div class="chat-menu-content">
								<!--<div class="js-chat-colors chat-colors clearfix">
									<a class="chat-colors-swatch" style="background-color:#FF0000;"></a>
									<a class="chat-colors-swatch" style="background-color:#0000FF;"></a>
									<a class="chat-colors-swatch" style="background-color:#008000;"></a>
									<a class="chat-colors-swatch" style="background-color:#B22222;"></a>
									<a class="chat-colors-swatch" style="background-color:#FF7F50;"></a>
									<a class="chat-colors-swatch" style="background-color:#9ACD32;"></a>
									<a class="chat-colors-swatch" style="background-color:#FF4500;"></a>
									<a class="chat-colors-swatch" style="background-color:#2E8B57;"></a>
									<a class="chat-colors-swatch" style="background-color:#DAA520;"></a>
									<a class="chat-colors-swatch" style="background-color:#D2691E;"></a>
									<a class="chat-colors-swatch" style="background-color:#5F9EA0;"></a>
									<a class="chat-colors-swatch" style="background-color:#1E90FF;"></a>
									<a class="chat-colors-swatch" style="background-color:#FF69B4;"></a>
									<a class="chat-colors-swatch" style="background-color:#8A2BE2;"></a>
									<a class="chat-colors-swatch" style="background-color:#00FF7F;"></a>
									<a class="small js-turbo-more-colors" href="#">m&aacute;s colores?</a>
								</div>-->
								<p>
									<input class="ember-view ember-checkbox" type="checkbox">
									Marcas de tiempo
								</p>
								<p class="toggle-darkmode">
									<input class="ember-view ember-checkbox" type="checkbox">
									Modo oscuro
								</p>
								<p>
									<a href="#">Ocultar chat</a>
								</p>
								<p class="hidden">
									<a href="#">Ventana emergente</a>
								</p>
							</div>
						</div>
					</div>
					<div class="chat-buttons-container clearfix">
						<a class="button glyph-only float-left" title="Chat Settings">
							<svg class="svg-gear" height="16px" version="1.1" viewbox="0 0 16 16" width="16px" x="0px" y="0px">
								<path clip-rule="evenodd" d="M15,7v2h-2.115c-0.125,0.615-0.354,1.215-0.713,1.758l1.484,1.484l-1.414,1.414l-1.484-1.484C10.215,12.531,9.615,12.76,9,12.885V15H7v-2.12c-0.614-0.126-1.21-0.356-1.751-0.714l-1.491,1.49l-1.414-1.414l1.491-1.49C3.477,10.211,3.247,9.613,3.12,9H1V7h2.116C3.24,6.384,3.469,5.785,3.829,5.242L2.343,3.757l1.414-1.414l1.485,1.485C5.785,3.469,6.384,3.24,7,3.115V1h2v2.12c0.613,0.126,1.211,0.356,1.752,0.714l1.49-1.491l1.414,1.414l-1.49,1.492C12.523,5.79,12.754,6.387,12.88,7H15z M8,6C6.896,6,6,6.896,6,8s0.896,2,2,2s2-0.896,2-2S9.104,6,8,6z" fill-rule="evenodd"></path>
							</svg>
						</a>
						<button class="button send-chat-button primary float-right"><span>Chat</span></button>
					</div>
				</div>

			</div>
		</div>
		<?php
		} else {
		?>
		<div class="js-chat-hidden-overlay chat-hidden-overlay">
			<div class="popped-out-text">
				<p>
					Para ver el chat necesitas iniciar sesi&oacuten.
				</p>
				<a class="button primary" href="<?=$nuke->facebook->getLoginUrl()?>">Iniciar sesi&oacuten</a>
			</div>
		</div>
		<?php
		}
		?>
	</div>
</div>
</body>
</html>
nuke.php:
HTML:
<?php
class nuke {
        // sí, yo le puse "xxx", para que no la usen...
	var $FacebookAPI = array(
		'appId'  => 'xxx', 
		'secret' => 'xxx'
	);
	var $db = array(
		'hostname'  => 'localhost', 
		'username' => 'root', 
		'password' => '', 
		'database' => 'v9'
	);
	var $site = array(
		'name'  => 'Public Chat', 
		'url' => 'http://mydomain.com', 
	);
	var $fbOn = false;
	
	public $facebook = array();
	public $CallFB = array();
	
	public function __construct() {
		$this::StartFacebook();
		$this::StartSql();
	}
	
	public function StartFacebook() {
		require 'facebook/facebook.php';

		$facebook = new Facebook(array(
			'appId'  => $this->FacebookAPI['appId'], 
			'secret' => $this->FacebookAPI['secret']
		));
		
		try {
			$perfil = $facebook->api('/me');
		} catch (FacebookApiException $e) {
			error_log($e);
		}
		
	    $this->fbOn = $facebook->getUser();
	    $this->facebook = $facebook;
	        if($this->fbOn) {
			$this->CallFB = $perfil;
		}
	    
	}
	
	public function StartSql() {
		$mysqli = new mysqli($this->db['hostname'], $this->db['username'], $this->db['password'], $this->db['database']);

		if ($mysqli->connect_errno) {
		    exit($mysqli->connect_error);
		}
	}
}

Sí, también he borrado lineas de código que no son necesarias que las vean.
 
Yo también e tenido problemas con algunas de las app para Facebook, y ayer funcionaban perfectas
 
¿Facebook aviso de esto?
 
tu app no esta completa como veo que genera
<a class="button primary" href="<?=$nuke->facebook->getLoginUrl()?>">Iniciar sesi&oacuten</a>
 
Atrás
Arriba