2010-07-31 2 views
0

현재 로그인 한 사용자의 친구를 얻으려고합니다. 아래 양식을 사용하여 한 친구를 선택하고 같은 페이지로 제출해야합니다. 스크립트는 친구의 userid (하나만)를 가져 와서 데이터베이스에 추가한다고 가정합니다.Facebook FBML, fb : friend-selector 친구 userid를 얻으십시오

스크립트가 정상적으로 작동하지만 올바른 ID (잘못된 ID $_POST['friend_selector_id'])를 게시하지 않습니다. 다음과 같은 ID가 게시됩니다. 2147483647이 ID가 프로필인지 ID가 필요한지 확실하지 않습니다. 이 코드 <fb:profile-pic uid=과 함께 사용하십시오. 나는 userid가 필요하다. 누군가 나를 도울 수 있을까요?

가 감사합니다 : 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; 
    } 
+0

2147483647은 적절한 UID처럼 보입니다. 왜 그게 잘못이라고 생각하니? – serg

+0

을 입력하면 오류가 발생합니다. 유효한 프로필 ID가 아닙니다. 응용 프로그램에서 페이지를로드하는 중 오류가 발생했습니다. 런타임 오류 : fb : profile-pic : fb : profile_pic의 잘못된 uid (2147483647) – Krasi

+0

친구 선택기에서 사용자 프로필을 롤오버하면 url에 uid가 표시됩니다. 어떻게 표시되며 2147483647과 어떻게 비교됩니까? 또한'am_injection'은 무엇을합니까? 그것이 넘치는 숫자 나 그 무엇으로 변환 할 수 있습니까? 'am_injection '없이 해봤습니까? – serg

답변

0

,이 스크립트가 아니었다, 내 데이터베이스이었다. 나는 필드를 BIGINT로 설정해야만했습니다. 그렇지 않으면 데이터베이스에 기록 된 숫자가 완전히 달라졌습니다.

관련 문제