我想在我的网站上植入Facebook注册。MySQL:“拒绝访问”
我用这个教程:http://www.9lessons.info/2011/01/user-signup-using-facebook-data.html
当我点击“注册”,它的时间码的数据插入到数据库中,我得到这个错误:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'USERNAME'@'HOST' (using password: YES) in /home/a9297472/public_html/store_user_data.php on line 44
(我删的真正用户名和主机)
根据错误的主机和用户名是正确的。 这里是过程代码:
<?php
include('config/db_con.php');
define('FACEBOOK_APP_ID', 'APP ID'); // Place your App Id here
define('FACEBOOK_SECRET', 'APP SECRET'); // Place your App Secret Here
// No need to change the function body
function parse_signed_request($signed_request, $secret)
{
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
// 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
);
$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("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// Inserting into users table
$result = mysql_query("
INSERT INTO users (
name, email, password, gender, dob
) VALUES (
'$name', '$email', '$password', '$gender', '$dob')
");
if($result){
// User successfully stored
}
else
{
// Error in storing
}
}
else
{
echo '$_REQUEST is empty';
}
?>
我加倍检查了一切。 主机,用户名,密码& db_name是我在网站的其他部分使用的相同的细节,它工作正常。 我做错了什么?
谢谢!
你也应该不发表您的appid和因为有人现在可以代表你的应用执行操作:-)我会建议编辑你的帖子以阻止秘密,然后重置它[开发者应用](http://www.facebook.com/developers)。 – DSchultz