Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    registrazione con facebook php

    ho scaricato l'sdk di facebook ho completato tutto, quando uno si registra tramite facebook sul mio sito può soltanto accedere solo tramite facebook e non dal form del sito, vorrei fare qualche modifica tipo che prende il nome utente ad esempio www.facebook/nome.utente poi anche la password e dovrà essere criptata con md5, ho provato a cambiarlo ma non funziona, qualche aiuto?
    in pratica quando prende la password e il nome utente ecc.. potrà accedere anche su un mio social network che ho appena creato. questo lo salverà nel database chiamato name="password" poi quando faccio accedi tramite facebook ho un altro problema non me lo salva nel database name="email"

    questo file è chiamato logi-facebook.php

    Codice PHP:
    <?php


    require 'facebook/facebook.php';
    require 
    'config/fbconfig.php';
    require 
    'config/functions.php';


    $facebook = new Facebook(array(
                
    'appId' => APP_ID,
                
    'secret' => APP_SECRET,
                ));


    $user $facebook->getUser();


    if (
    $user) {
      try {
        
    // Proceed knowing you have a logged in user who's authenticated.
        
    $user_profile $facebook->api('/me');
      } catch (
    FacebookApiException $e) {
        
    error_log($e);
        
    $user null;
      }

        if (!empty(
    $user_profile )) {
            
    # User info ok? Let's print it (Here we will be adding the login and registering routines)
      
            
    $username $user_profile['name'];
                 
    $uid $user_profile['id'];
             
    $email $user_profile['email'];
            
    $user = new User();
            
    $userdata $user->checkUser($uid'facebook'$username,$email,$twitter_otoken,$twitter_otoken_secret);
            if(!empty(
    $userdata)){
                
    session_start();
                
    $_SESSION['id'] = $userdata['id'];
     
    $_SESSION['oauth_id'] = $uid;


                
    $_SESSION['username'] = $userdata['username'];
                
    $_SESSION['email'] = $email;
                
    $_SESSION['oauth_provider'] = $userdata['oauth_provider'];
                
    header("Location: home.php");
            }
        } else {
            
    # For testing purposes, if there was an error, let's kill the script
            
    die("There was an error.");
        }
    } else {
        
    # There's no active session, let's generate one
        
    $login_url $facebook->getLoginUrl(array( 'scope' => 'email'));
        
    header("Location: " $login_url);
    }
    ?>
    fuctions.php

    Codice PHP:
    <?php
    require 'dbconfig.php';
    class 
    User {
        function 
    checkUser($uid$oauth_provider$username,$email,$twitter_otoken,$twitter_otoken_secret)     {        $query mysql_query("SELECT * FROM `users` WHERE oauth_uid = '$uid' and oauth_provider = '$oauth_provider'") or die(mysql_error());        $result mysql_fetch_array($query);        if (!empty($result)) {            # User is already present        } else {            #user not present. Insert a new Record            $query = mysql_query("INSERT INTO `users` (oauth_provider, oauth_uid, username,email) VALUES ('$oauth_provider', $uid, '$username','$email')") or die(mysql_error());            $query = mysql_query("SELECT * FROM `users` WHERE oauth_uid = '$uid' and oauth_provider = '$oauth_provider'");            $result = mysql_fetch_array($query);            return $result;        }        return $result;    }
        
    }
    ?>
    grazie ragazzi se mi aiutate

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Hai già una discussione aperta su questo argomento, prosegui quella per favore.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.