如何在用户接受通知时让应用删除通知?例如,用户向朋友发送请求,然后在给出接受或拒绝选项之前通知用户。接受后我需要在数据库中输入一些信息,这不是我遇到的问题。
我正在使用下面的代码,我发现的问题是当用户有来自不同人的多个请求时。它要么删除所有请求,要么根本不删除,理想情况下我需要删除用户已接受的每个请求。有什么想法吗?
$request = $facebook->api("/me/apprequests");
foreach ($request as $data) {
echo "<form method='post'>";
foreach ($data as $full_request_id) {
echo "<input type='submit' name='yes' id='yes' value='Yes'>";
if ((isset($_POST['yes']))) {
try {
$delete_success = $facebook->api("/$full_request_id",'DELETE');
if ($delete_success) {
echo "Successfully deleted " . $full_request_id;}
else {
echo "Delete failed".$full_request_id;}
}
catch (FacebookApiException $e) {
echo $e;}
}
echo "</form>";
}
}
答案 0 :(得分:0)
“请求”对话框的页面上有示例代码:https://developers.facebook.com/docs/reference/dialogs/requests/
我认为推荐的工作流程是删除该用户的所有待处理请求(来自Facebook方面);如果您仍然需要用户在点击第一个后逐个手动接受它们,您可以为剩余的请求呈现您自己的界面
这就像Cityville这样的应用程序 - 当你点击Facebook请求他们清除你所有的Facebook请求并呈现他们自己的对话框,让你接受剩余的(现在隐藏在Facebook的onterface)礼物。