-2

Login with facebook doesn't work on my server but it worked on localhost check out error on My site

Error found :

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /.../Facebook/FacebookRedirectLoginHelper.php on line 175

My login.php

<?php 
ob_start();
include 'init.php';
require_once 'config.php'; 
//initalize user class
$user_obj = new Cl_User();

/*********Facebook Login **********/
require_once('Facebook/FacebookSession.php');
require_once('Facebook/FacebookRedirectLoginHelper.php');
require_once('Facebook/FacebookRequest.php');
require_once('Facebook/FacebookResponse.php');
require_once('Facebook/FacebookSDKException.php');
require_once('Facebook/FacebookRequestException.php');
require_once('Facebook/FacebookAuthorizationException.php');
require_once('Facebook/GraphObject.php');
require_once('Facebook/GraphUser.php');
require_once('Facebook/GraphSessionInfo.php');
require_once( 'Facebook/HttpClients/FacebookHttpable.php' );
require_once( 'Facebook/HttpClients/FacebookCurl.php' );
require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php' );
require_once( 'Facebook/Entities/AccessToken.php' );
require_once( 'Facebook/Entities/SignedRequest.php' );

use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\GraphUser;
use Facebook\GraphSessionInfo;

 FacebookSession::setDefaultApplication(FB_APP_ID, FB_APP_SECRET);

$helper = new FacebookRedirectLoginHelper(FB_REDIRECT_URI);
$session = $helper->getSessionFromRedirect();

if(isset($_SESSION['token'])){
    $session = new FacebookSession($_SESSION['token']);
    try{
        $session->validate(FB_APP_ID, FB_APP_SECRET);
    }catch(FacebookAuthorizationException $e){
        echo $e->getMessage();
    }
}

$data = array();

if(isset($session)){
    $_SESSION['token'] = $session->getToken();
    $request = new FacebookRequest($session, 'GET', '/me');
    $response = $request->execute();
    $graph = $response->getGraphObject(GraphUser::className());

    $data = $graph->asArray();
    $id = $graph->getId();
    $image = "https://graph.facebook.com/".$id."/picture?width=100";
    $data['image'] = $image;
    $user_obj->fb_login($data);
} 
/*********Facebook Login **********/
?>
<?php 
    if(!empty( $_POST )){
        try {
            $user_obj = new Cl_User();
            $data = $user_obj->login( $_POST );
            if(isset($_SESSION['logged_in']) && $_SESSION['logged_in']){
                header('Location: home.php');
            }
        } catch (Exception $e) {
            $error = $e->getMessage();
        }
    }
    //print_r($_SESSION);
    if(isset($_SESSION['logged_in']) && $_SESSION['logged_in']){
        header('Location: home.php');
    }
?>
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Smart Login Page</title>
    <link href='http://fonts.googleapis.com/css?family=Pacifico' rel='stylesheet' type='text/css'>
    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link href="css/font-awesome.min.css" rel="stylesheet">
    <link href="css/login.css" rel="stylesheet">
    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
    <script src="js/jquery.min.js"></script>
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="js/bootstrap.min.js"></script>
  </head>
  <body>
    <div class="container">
        <?php require_once 'templates/ads.php';?>
        <div class="login-form">
            <?php require_once 'templates/message.php';?>
            <h1 class="text-center">Login</h1>
            <div class="form-header">
                <i class="fa fa-user"></i>
            </div>
            <form id="login-form" method="post" class="form-signin" role="form" action="<?php echo $_SERVER['PHP_SELF']; ?>">
                <input name="email" id="email" type="email" class="form-control" placeholder="E-mail" autofocus> 
                <input name="password" id="password" type="password" class="form-control" placeholder="Password">

                <button class="btn btn-block bt-login" type="submit" id="submit_btn" data-loading-text="Password....">Login</button>
                <br>
                <a class="btn btn-primary facebook" style="width: 100%;" href="<?php echo $helper->getLoginUrl(array('email'));?>"> <i class="fa fa-facebook modal-icons"></i> เข้าสู่ระบบด้วย Facebook </a>
            </form>
            <div class="form-footer">
                <div class="row">
                    <div class="col-xs-6 col-sm-6 col-md-6">
                        <i class="fa fa-lock"></i>
                        <a href="forget_password.php">Forgot Password? </a>

                    </div>

                    <div class="col-xs-6 col-sm-6 col-md-6">
                        <i class="fa fa-check"></i>
                        <a href="register.php"> Register </a>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <!-- /container -->
    <script src="js/jquery.validate.min.js"></script>
    <script src="js/login.js"></script>
  </body>
</html>
<?php ob_end_flush(); ?>

I've download login system from this Demo (This site has got attack by malware if you need to download please leave your comments I've downloaded before this site got attack.)

Vintage Beef
  • 475
  • 6
  • 18
  • This question is too broad - the link given shows an error 500 page. To make it clear on what error you're getting, please turn error reporting on or look in your server logs for the issue, then edit the error into your question. As it stands, there are many possible points of failure for this code, it's your job to give us the specifics! cheers! – Sean Feb 10 '16 at 10:07
  • Some sources if you need a hand: [Where are the Apache and PHP log files](http://askubuntu.com/questions/14763/where-are-the-apache-and-php-log-files), and [How to get useful error messages in PHP?](http://stackoverflow.com/questions/845021/how-to-get-useful-error-messages-in-php) – Sean Feb 10 '16 at 10:11
  • @Sean Please check out my site again I've turn on reporting. – Vintage Beef Feb 10 '16 at 10:13

1 Answers1

2

It looks like your server is running a PHP version which is incompatible with the Facebook library. I would suggest upgrading your PHP version to match the minimum version required for the Facebook SDK.

I can see that your server is running on PHP 5.3.28 (shown in your X-Powered-By response header). Facebook's v5 PHP SDK has a minimum requirement of PHP 5.4 or greater. Ensure that you meet that requirement, or downgrade the PHP SDK version.

Sean
  • 2,278
  • 1
  • 24
  • 45