Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/08/2012, 22:31
j444ck
 
Fecha de Ingreso: agosto-2012
Mensajes: 1
Antigüedad: 11 años, 9 meses
Puntos: 0
Problemas con Facebook Registration Plugin

quiero implementar el registro en una web con el plugin de registro de facebook "http://developers.facebook.com/docs/plugins/registration/" pero no e logrado que los datos se guarden en la base de datos

REGISTRATION.HTML
Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title>Facebook Registration plugin</title>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
    </head>
    <body>
        <div id="add"></div>
        <div id="container">
            <label>Facebook Registration plugin</label><br/>
            <div id="reg_form">

                <center>
                <iframe src="https://www.facebook.com/plugins/registration?
                        client_id=FACEBOOK_APP_ID_NUMERO&
                        redirect_uri=http://myweb.com/store_user_data.php&
                        fields=name,birthday,gender,location,email"
                        scrolling="auto"
                        frameborder="no"
                        style="border:none"
                        allowTransparency="true"
                        width="50%"
                        height="100%">
                </iframe>
                </center>


            </div>
        </div>
    </body>
</html> 
STORE_USER_DATA.PHP
Código PHP:
            <?php
            define
('FACEBOOK_APP_ID''FACEBOOK_APP_ID_NUMERO');
            
define('FACEBOOK_SECRET''FACEBOOK_SECRET_NUMERO');

            
// No need to change function body
            
function parse_signed_request($signed_request$secret) {
                list(
$encoded_sig$payload) = explode('.'$signed_request2);

                
// decode the data
                
$sig base64_url_decode($encoded_sig);
                
$data json_decode(base64_url_decode($payload), true);

                if (
strtoupper($data['algorithm']) !== 'HMAC-SHA256') {
                    
error_log('Unknown algorithm. Expected HMAC-SHA256');
                    return 
null;
                }

                
// check sig
                
$expected_sig hash_hmac('sha256'$payload$secret$raw true);
                if (
$sig !== $expected_sig) {
                    
error_log('Bad Signed JSON signature!');
                    return 
null;
                }

                return 
$data;
            }

            function 
base64_url_decode($input) {
                return 
base64_decode(strtr($input'-_''+/'));
            }

            if (
$_REQUEST) {
                
$response parse_signed_request($_REQUEST['signed_request'],
                                
FACEBOOK_SECRET);
                
                echo 
"<pre>";
                
print_r($response);
                echo 
"</pre>"// Uncomment this for printing the response Array
                
                
$name $response["registration"]["name"];
                
$email $response["registration"]["email"];
                
$password $response["registration"]["password"];
                
$gender $response["registration"]["gender"];
                
$dob $response["registration"]["birthday"];

                
// Connecting to Database
                
mysql_connect('BD_HOST''USUARIO''CONTRASEÑA');
                
mysql_select_db('BASE_DE_DATOS');

                
$result mysql_query("INSERT INTO users (name, email, password, gender, dob) VALUES ('$name', '$email', '$password', '$gender', '$dob')");
                if (
$result) {
                    
// User successfully stored
                    
echo "<pre>";
                
print_r($response);
                echo 
"</pre>"// Uncomment this for printing the response Array
                    // Redirect to some page
                
} else {
                    
// Error
                    // Redirect to error page
                
}
            } else {
                echo 
'$_REQUEST is empty';
            }
            
?>
Espero alguien me pueda ayudar... saludos!

Última edición por j444ck; 02/08/2012 a las 22:37