J'ai besoin d'une solution personnelle gmail gestionnaire de contacts. Nous avons récemment allé à google apps premier ministre et il n'existe aucun moyen pour notre peu de gens à partager leurs contacts personnels mis à part l'envoi d'une vCard. Certains ont également besoin de capacités de collaboration et je pensais que la meilleure option serait de déployer un programme php petite qui a permis l'accès à tout les contacts d'un autre utilisateur. Im en utilisant le Zend Framework et de l'ensemble Im faire une bel édifice ajouter, modifier et supprimer des pages, mais Im de la difficulté à cartographier les flux Atom. Ive effectué une recherche google et zend et nulle part ils me donner une liste complète des éléments et attributs. Google donne un exemple de merde d'un aliment avec un contact. Je pensais que je pouvais l'écho de mon alimentation variable $ après je fais un Zend_Query mais thats pas l'impression à l'écran ou la source. J'ai besoin de voir un exemple d'un flux complet et je sais les noms des noeuds Im traitant afin que je puisse analyser correctement. Ai-je raison ou suis-je manqué quelque chose?
Le Zend Framework fait quelque chose comme ceci:
$client = Zend_Gdata_ClientLogin::getHttpClient(
$user, $pass, 'cp');
$gdata = new Zend_Gdata($client);
$gdata->setMajorProtocolVersion(3);
// perform query and get feed of all results
$query = new Zend_Gdata_Query(
'http://www.google.com/m8/feeds/contacts/default/full');
$query->maxResults = 0;
$query->setParam('orderby', 'lastmodified');
$query->setParam('sortorder', 'descending');
$feed = $gdata->getFeed($query);
foreach($feed as $entry){
$obj = new stdClass;
$obj->edit = $entry->getEditLink()->href;
$xml = simplexml_load_string($entry->getXML());
$obj->name = (string) $entry->title;
$obj->orgName = (string) $xml->organization->orgName;
$obj->orgTitle = (string) $xml->organization->orgTitle;
$obj->instantmessenger = (string) $xml->im;
foreach ($xml->email as $e) {
$obj->emailAddress[] = (string) $e['address'];
}
foreach ($xml->phoneNumber as $p) {
$obj->phoneNumber[] = (string) $p;
}
foreach ($xml->website as $w) {
$obj->website[] = (string) $w['href'];
}
$results[] = $obj;
}
print_r($results);
- $client = Zend_Gdata_ClientLogin::getHttpClient(
- $user, $pass, 'cp');
- $gdata = new Zend_Gdata($client);
- $gdata->setMajorProtocolVersion(3);
-
- // perform query and get feed of all results
- $query = new Zend_Gdata_Query(
- 'http://www.google.com/m8/feeds/contacts/default/full');
- $query->maxResults = 0;
- $query->setParam('orderby', 'lastmodified');
- $query->setParam('sortorder', 'descending');
- $feed = $gdata->getFeed($query);
- foreach($feed as $entry){
- $obj = new stdClass;
- $obj->edit = $entry->getEditLink()->href;
- $xml = simplexml_load_string($entry->getXML());
- $obj->name = (string) $entry->title;
- $obj->orgName = (string) $xml->organization->orgName;
- $obj->orgTitle = (string) $xml->organization->orgTitle;
- $obj->instantmessenger = (string) $xml->im;
- foreach ($xml->email as $e) {
- $obj->emailAddress[] = (string) $e['address'];
- }
-
- foreach ($xml->phoneNumber as $p) {
- $obj->phoneNumber[] = (string) $p;
- }
- foreach ($xml->website as $w) {
- $obj->website[] = (string) $w['href'];
- }
-
- $results[] = $obj;
- }
-
- print_r($results);
Ici ils ont simplement reconstruire leur propre tableau des résultats avec le $ obj. Je ne sais pas comment Im suppose de connaître toutes les variables $ obj j'ai. Je devinai instantmessenger $ obj-> = (string) $ im xml->;...il n'a pas renvoyer une erreur si Im pensant que je suis bonne. Un j'ai changé et il me jeta une erreur et a dit qu'il n'existait pas. Cependant, un de mes contacts a un champ im rempli et il ne s'est pas présenté. Donc, Im annonce.