Как обновить / удалить контакты Google api v3? в переполнении стека

Я программирую API Google на PHP. API контактов v3. Я могу создавать контакты, но не могу их редактировать и удалять.

Это данные, которые я получаю. Например:

Массив ([0] => Массив ([имя] => Серхио [электронная почта] => [email protected] [id] => http://www.google.com/m8/feeds/contacts/email%40gmail.com/base/4205b6d80df6ed10 [etag] => «RX0zfDVSLyt7I2A9XBJXFk4NQgw.» ));

$XML='<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"xmlns:gContact="http://schemas.google.com/contact/2008"xmlns:gd="http://schemas.google.com/g/2005" xmlns:batch="http://schemas.google.com/gdata/batch"><entry gd:etag="'.$etag.'">
<batch:id>update</batch:id>
<batch:operation type="update"/>
<category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/g/2008#contact"/>
<id>http://www.google.com/m8/feeds/contacts/email%40gmail.com/base/4205b6d80df6ed10</id>
<updated>'.date("Y-m-d").'T'.date("H:i").':00.000Z</updated>
<category scheme="http://schemas.google.com/g/2005#kind"term="http://schemas.google.com/contact/2008#contact"/>
<title type="text">'.$name.'</title>
<gd:name>
<gd:givenName>'.$name.'</gd:givenName>
<gd:familyName></gd:familyName>
<gd:fullName>'.$name.'</gd:fullName>
</gd:name>
<content type="text">Actualizado el '.date("d-m-Y H:i").' </content>
<gd:email address="' . $email. '" rel="http://schemas.google.com/g/2005#home"/>
<gd:phoneNumber rel="http://schemas.google.com/g/2005#mobile" primary="true">25151515151</gd:phoneNumber>
</entry></feed>';

И использовать локон

$headers = array('Host: www.google.com',
'Gdata-version: 3.0',
'Content-type: application/atom+xml',
'If-Match: *',
'Authorization: OAuth ' . $access_token);
$contactQuery = 'https://www.google.com/m8/feeds/contacts/default/full/4205b6d80df6ed10';

// echo $contactQuery;

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $contactQuery);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $XML);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 400);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
$result = curl_exec($ch);

Правильно ли отправлен XML?
Какие-либо предложения?

Спасибо

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]