Я стараюсь, чтобы текущие пользователи вошли в друзья пользователя, они должны выбрать одного друга, используя форму ниже, а затем отправить ее на ту же страницу. Сценарий должен получить идентификатор пользователя (только один) и добавить его в базу данных.Facebook App FBML, fb: friend-selector get friend userid
Сценарий работает нормально, но его не отправляет правильный идентификатор (неправильный ID $_POST['friend_selector_id']
), он отправляет идентификатор, который выглядит так: 2147483647, и я не уверен, является ли это идентификатором профиля или что, но мне нужен идентификатор что вы используете с этим кодом <fb:profile-pic uid=
. Мне нужен идентификатор пользователя. Может ли кто-нибудь помочь мне?
Спасибо: D
<form action="<?php echo $appCanvasUrl.'challenge.php?gameid='.$_GET[gameid].'&userid='.$user.'&userid2='.$friend_selector_id; ?>" id="challenge" method="post">
<fb:friend-selector uid="<?PHP echo $user; ?>" name="userid2" idname="friend_selector_id"/>
<INPUT type="submit" value="Challenge"> </form>
<?php
if(isset($_GET['gameid']) && is_numeric($_GET['userid']) && isset($_GET['userid2'])) {
$gameid = am_injection($_GET[gameid]);
$userid2 = am_injection($_POST['friend_selector_id']);
$userid1 = am_injection($user);
am_queries($db, "INSERT INTO `AMCMS_challenges` (`primkey` ,`userkey1` ,`userkey2` ,`gameid` ,`winner`, `score1`, `score2`) VALUES (NULL, $userid1, $userid2, $gameid, 0, 0, 0);");
echo 'Challenge recorded.';
} else {
echo 'Please select a friend to challenge!';
exit;
}
2147483647 выглядит как правильный uid. Что заставляет вас думать, что это неправильно? – serg
, когда я печатаю fb: profile-pic> Я получаю сообщение об ошибке из facebook, говоря, что это не действительный идентификатор профиля. Ошибки при загрузке страницы из приложения Ошибки времени выполнения: fb: profile-pic: Недопустимый uid для fb: profile_pic (2147483647) –
Krasi
Когда вы просматриваете профиль пользователя в селекторе друзей, он должен показывать uid в URL-адресе. Что он показывает и как он сравнивается с 2147483647? И что делает 'am_injection'? Возможно ли, что оно преобразует его в число или что-то, что переполняется? Вы пробовали без 'am_injection'? – serg