lelith
02.12.2008, 17:57
Hallöchen,
ich probiere jetzt schon seit ewigkeiten daran rum einen event aus einem Kalender zu löschen. Ich habe mich an http://code.google.com/apis/calendar/docs/1.0/developers_guide_php.html#DeletingEvents diese api gehalten.
<a href=\"delete.php?id_event=\".event->id."\"">loeschen</a>
function makeObject()
{
$client = Zend_Gdata_ClientLogin::getHttpClient($_SESSION['user'], $_SESSION['pw'], 'cl');
$service = new Zend_Gdata_Calendar($client);
//rueckgabe des kalender services
return $service;
}//ende makeObject
function delEvent($eventid)
{
$service = makeObject();
try{
$service->delete($eventid);
}catch (Zend_Gdata_App_Exception $e) {
echo "Fehler: " . $e->getMessage();
}
}//ende delEvent
die Fehlermeldung ist: "You must specify an URI to which to post"
das event bekomme ich auf jeden fall zurück und kann ihn ausgeben. Weiß solangsam nicht mehr weiter *seufz* :(
Hat einer von euch einen rat?
-----------------------------------------
EDIT:
Ich habe noch einmal in der Calender.php Demo nachgeschaut und dort gibt es eine andere möglichkeit des löschens, ich hab den Code oben mal angepasst.
Jetzt bekomme ich eine andere Fehlermeldung.
"Expected response code 200, got 403 This feed is read-only".
Ich Authentifiziere mich immer via Zend_Gdata_ClientLogin der kalender ist public und der eintrag "default". der login den ich benutze hat die rechte "ändern und freigeben" im google kalender.
muss ich mich eventuell an dieser stelle anders authentifizieren als über den Zend Client Login? In der Documentation steht jedoch folgendes
Um Einträge zu löschen, muß ein authentifizierter Zend_Http_Client verwendet werden der mit Hilfe der Zend_Gdata_AuthSub oder Zend_Gdata_ClientLogin Klassen erstellt wurde.
Womit meine Authentifizierungsmethode ja richtig sein müsste?
lg leli
ich probiere jetzt schon seit ewigkeiten daran rum einen event aus einem Kalender zu löschen. Ich habe mich an http://code.google.com/apis/calendar/docs/1.0/developers_guide_php.html#DeletingEvents diese api gehalten.
<a href=\"delete.php?id_event=\".event->id."\"">loeschen</a>
function makeObject()
{
$client = Zend_Gdata_ClientLogin::getHttpClient($_SESSION['user'], $_SESSION['pw'], 'cl');
$service = new Zend_Gdata_Calendar($client);
//rueckgabe des kalender services
return $service;
}//ende makeObject
function delEvent($eventid)
{
$service = makeObject();
try{
$service->delete($eventid);
}catch (Zend_Gdata_App_Exception $e) {
echo "Fehler: " . $e->getMessage();
}
}//ende delEvent
die Fehlermeldung ist: "You must specify an URI to which to post"
das event bekomme ich auf jeden fall zurück und kann ihn ausgeben. Weiß solangsam nicht mehr weiter *seufz* :(
Hat einer von euch einen rat?
-----------------------------------------
EDIT:
Ich habe noch einmal in der Calender.php Demo nachgeschaut und dort gibt es eine andere möglichkeit des löschens, ich hab den Code oben mal angepasst.
Jetzt bekomme ich eine andere Fehlermeldung.
"Expected response code 200, got 403 This feed is read-only".
Ich Authentifiziere mich immer via Zend_Gdata_ClientLogin der kalender ist public und der eintrag "default". der login den ich benutze hat die rechte "ändern und freigeben" im google kalender.
muss ich mich eventuell an dieser stelle anders authentifizieren als über den Zend Client Login? In der Documentation steht jedoch folgendes
Um Einträge zu löschen, muß ein authentifizierter Zend_Http_Client verwendet werden der mit Hilfe der Zend_Gdata_AuthSub oder Zend_Gdata_ClientLogin Klassen erstellt wurde.
Womit meine Authentifizierungsmethode ja richtig sein müsste?
lg leli