あなたのデータベースに写真の投稿と一緒にFacebookのユーザーIDを保存するだけです。
写真のデータが入っているテーブルがあるとします。 FacebookユーザーIDも保存する新しいフィールドを作成します。その後、ユーザーがあなたのアプリなどを訪れたときに、そのIDが既にデータベースに入っているかどうかを確認します。もしそうなら、それらにアップロードフォームを与えてはいけないが、エラーメッセージ。そうでない場合は、アップロードを許可します。
編集:チェックアウトFacebook's SDK。 FacebookのIDを含むアプリのページを閲覧しているユーザーの詳細を取得するための例があります。それをあなたのスクリプトで使うことができます。
<?php
require 'facebook.php';
$facebook = new Facebook(array(
'appId' => 'YOUR_APP_ID',
'secret' => 'YOUR_APP_SECRET',
));
$user = $facebook->getUser();
if ($user) {
try {
$user_profile = $facebook->api('/me');
}
catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
if ($user) {
$logoutUrl = $facebook->getLogoutUrl();
}
else {
$loginUrl = $facebook->getLoginUrl();
echo "<script>top.location.href='$loginUrl';</script>";
exit;
}
// if we're here, the user has successfully authenticated
// you now have access to their profile in $user_profile
$userId = intval($user_profile['id']);
// logic goes here to query database and check if $userId
// has already been used to submit a photo or not
こんにちはmartin、yeap私は "facebookID"と呼ばれるfacebookユーザーIDを格納するフィールドをmySQLに持っています。私はどのように私はそれをチェックするつもりの流れを理解していますが、問題は、私は本当に良いコーダーではないと私はよくうまく動作していないことが判明したすべてのif文をので、私には、どのように私はそれを行うことができましたので、もし私がこのような仕事に再び遭遇すれば、将来もそれを参照することができますか?返事をしてくれてありがとう、申し訳ありません。 – SupaFlybaba
単なるメモ:値を含む隠しfbIDフィールド= <?php echo $ me ['id']?>は、私が秘密裏にfbIDを取得する方法です。もう一度、ありがとうございました – SupaFlybaba
フォームを送信するときに他の人を偽装するためにWebインスペクタを使用するだけで、IDをページにドロップする必要はありません。 –