Facebook Регистрация Подключиться - PullRequest
1 голос
/ 23 февраля 2012

Обновление:

Хорошо, так что я исправил свою предыдущую проблему (кроме SQLinjection, которое я не знаю, как исправить, но пока это неважно), однако мне нужно, чтобы оно обнаружило Мужской или Женскийи удалите некоторые символы из него тоже ... Это код, который я сделал для этого

Я определил переменную здесь:

$gender = $response["registration"]["gender"];

Затем я определил newgender здесь

$new_gender = "F";

Однако затем я добавил оператор if, который должен был определить, был ли он Male, и изменить его на «M»

if($gender == "Male"){
$new_gender = "M";
}

Код, похоже, просто игнорирует оператор if, поскольку он всегда отображается какF для женщин.(Мне нужен код таким образом или похожая альтернатива, потому что для работы базы данных sql необходимо, чтобы она была длиной в 1 букву, поэтому только M или F.

Моя вторая проблема заключается в отображении зарегистрированного времени в БДно если кто-то может решить эту проблему первым, я обновлю ее с моей другой проблемой.

Большое спасибо,

Брэд

Я пытался сделать это, когдапользователь нажимает кнопку регистрации на Facebook, он добавляет туда информацию в мою базу данных, но я получаю сообщение об ошибке, поэтому не уверен, что делать ... Вот код, пожалуйста, помогите мне любым возможным способом.

    <?php
define('FACEBOOK_APP_ID', '276105599128518');
define('FACEBOOK_SECRET', 'mysecretappidhere');

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) {
  echo '<p>signed_request contents:</p>';
  $response = parse_signed_request($_REQUEST['signed_request'], 
                                       FACEBOOK_SECRET);
//$no_longer_needed_but_save_for_backup = explode(' ',$name,2);
//$dunno = $name_arr[0];
//$dunno = isset($name_arr[1])?$name_arr[1]:'';
//$Location_Array = $response["registration"]["location"]["name"];

$uname = $response["registration"]["username"];
$rname = $response["registration"]["name"];
$seckey = $response["registration"]["seckey"];
$email = $response["registration"]["email"];
$password = $response["registration"]["password"];
$gender = $response["registration"]["gender"];
$ip_last = $_SERVER['REMOTE_ADDR'];
$sessionKey = 'RevCMS-'.rand(9,999).'/'.substr(sha1(time()).'/'.rand(9,9999999).'/'.rand(9,9999999).'/'.rand(9,9999999),0,33);

// Connecting to database
mysql_connect('localhost', 'root', 'mypasswouldbehere') or die("MySQL Error: " . mysql_error());
mysql_select_db('phoenix3') or die("MySQL Error: " . mysql_error());

// Inserting into users table
$result = mysql_query("INSERT INTO users (id, username, real_name, password, mail, auth_ticket, rank, credits, vip_points, activity_points, activity_points_lastupdate, look, gender, motto, acount_created, last_online, online, ip_last, ip_reg, home_room, respect, daily_respect_points, daily_pet_respect_points, newbie_status, is_muted, mutant_penalty, mutant_penalty_expire, block_newfriends, hide_online, hide_inroom, mail_verified, vip, volume, seckey) 
VALUES 
(NULL, '$uname', '$rname', '$password', '$email', '$sessionKey','8', '10000', '0', '0', '0', '-', '$gender', 'I <3 Tropical-Resort', 'time()', ' . time() . ', '0', '$ip_last', '$ip_last', '8', '0', '3', '3', '0', '0', '0', '0', '0', '0', '0', '1', '0', '100', '$seckey')");
if($result){         

echo"should/'ve stored";
// GOT RESULTS
}
else
{
echo "error";
// Error in storing
}
}
else 
{
echo '$_REQUEST is empty';
}
?>

Ваш, Брэд

1 Ответ

1 голос
/ 26 февраля 2012

ceejayoz исправил проблему, повторяя echo mysql_error();, решает проблему, поскольку она сообщает вам ВСЕ проблемы MySQL, которые у вас есть.Чтобы исправить проблему с полом, которая была мне нужна, чтобы сократить ее с Мужского до «М» или Женского до «F», просто используйте PHP substr, поэтому пример ...

$gender = substr("$fbgender", -4, 1);

Спасибо всем, кто помог, -Brad

...