Php 从google日历中删除的事件仍显示在listEvents上

Php 从google日历中删除的事件仍显示在listEvents上,php,google-calendar-api,google-api-php-client,Php,Google Calendar Api,Google Api Php Client,当我从我的应用程序(甚至从谷歌日历)中删除事件时,我遇到了一个问题。我有我的日历和我所有的事件,我第一次尝试删除一个事件,它“工作”:我更改浏览器的选项卡,看到谷歌日历面板,事件成功删除,太棒了!!但是,如果我重新加载应用程序的选项卡。。。我仍然看到这个事件 此外,如果我从Google日历面板中删除数据,应用程序仍会在API调用中恢复此事件: $service->events->listEvents($calendar,$eventsParam); $service是一个Googl

当我从我的应用程序(甚至从谷歌日历)中删除事件时,我遇到了一个问题。我有我的日历和我所有的事件,我第一次尝试删除一个事件,它“工作”:我更改浏览器的选项卡,看到谷歌日历面板,事件成功删除,太棒了!!但是,如果我重新加载应用程序的选项卡。。。我仍然看到这个事件
此外,如果我从Google日历面板中删除数据,应用程序仍会在API调用中恢复此事件:

$service->events->listEvents($calendar,$eventsParam);
$service是一个Google\u service\u日历对象

多谢各位

编辑

以下是我删除事件的方式:

public function removedate()
{
    $service    = getService();
    $service->events->delete($this->input->post("calendar"), getEventId($service));
}
我正在使用codeigniter,我正在使用自己制作的助手来执行最常用的功能,这两个功能之间:

function getService($file=false)
{
    $ci =& get_instance();
    if($file)
        $file = CREDENTIALS_PATH.$file;
    else
        $file = CREDENTIALS_PATH.$ci->session->userdata("identity").".json";
    $ci->g_client->setAccessToken(file_get_contents($file));
    return new Google_Service_Calendar($ci->g_client);
}
function getEventId($service)
{
    $ci =& get_instance();
    $id         = $ci->input->post("id");
    $dni        = $id;
    if(!is_numeric($id))
        $id     = $ci->general_model->getData("users","phone", array("dni"=>$id), true)->phone;

    $min = false;
    $max = false;
    if($ci->input->post("min"))
        $min        = date("c", strtotime ( '-2 hour' , strtotime ( (new DateTime(explode("GMT", $ci->input->post("min"))[0]))->format("c"))));
    if($ci->input->post("max"))
        $max        = (new DateTime(explode("GMT", $ci->input->post("max"))[0]))->format("c");
    $events     = getDates($service, $ci->input->post("calendar"), $min, $max);
    foreach ($events->getItems() as $event)
    {
        if($id==$event->getSummary() || $dni==$event->getSummary())
            return $event->getId();
    }
}
新编辑

还有一件事。。。当我第一次删除某个事件时没有问题(并且该事件已在google日历上删除),当我刷新我的应用程序页面时,该事件仍然存在,当我再次尝试删除该事件时,我收到以下错误:

<br />
<b>Fatal error</b>:  Uncaught exception 'Google_Service_Exception' with message 'Error calling DELETE 
https://www.googleapis.com/calendar/v3/calendars/cnhkehagcve7rm8s1g88hauer8%40group.calendar.google.com/events/97smpf2320s3lmg8nnnpb9dndc: (410) 
Resource has been deleted' in
/var/www/html/prototipo/application/third_party/vendor/google/apiclient/src/Google/Http/REST.php:110

致命错误:未捕获异常“Google\u Service\u exception”,消息为“调用删除时出错” https://www.googleapis.com/calendar/v3/calendars/cnhkehagcve7rm8s1g88hauer8%40group.calendar.google.com/events/97smpf2320s3lmg8nnnpb9dndc: (410) 资源已在中删除 /var/www/html/prototipo/application/third_party/vendor/google/apiclient/src/google/Http/REST.php:110

资源已被删除。。。对我知道!!!为什么要保留所有事件

$events = $service->events->listEvents('<calendar_id>');

$events=$service->events->listEvents(“”);
从日历中删除任何事件

    $result = $service->events->delete('<calendar_id>', '<event_id>');
    echo "<br>========================<br>";
    var_dump($result);
    echo "<br>========================<br>";
$result=$service->events->delete(“”,”);
回声“
==================================
”; var_dump($结果); 回声“
==================================
”;
您的应用程序不应显示状态为“已取消”的事件。

请交叉检查您的事件id和日历id是否正确……您好@Vipin。对我观看了日历id,它与我的谷歌日历id匹配,关于事件id,我如何在谷歌日历面板上看到id??$events=$service->events->listents($calendarListEntry->id);var_dump($事件);尝试此操作,您将获得运行在代码$result=$service->events->delete('calendar_id','event_id')下的事件id;回声“
==================================
”;var_dump($结果);回声“
==================================
”;请让我知道是的,我就是这样做的。。。我将编辑我的问题,以提供更多关于我如何做到这一点的信息。嗨@Vipin。。。谷歌日历面板上是否有任何活动的id??在make$events=$service->events->listEvents($calendarId,$eventsParam)之后,我可以知道事件的id;var_dump($事件)@EloyFernándezFranco,我不知道如何在日历面板上获取事件id,为什么您需要在面板上获取事件id?如果您知道事件的名称,您可以从脚本中获取正确的事件id。。。。或者时间。。。。这是独一无二的,我们可以做任何你想做的…让我们。谢谢@luc。。。这就是问题所在。我不知道为什么我在代码上写了$eventsParameters[“showdelected”]=true;:/非常感谢。