2017-04-21 5 views
1

Ich schreibe ein Wordpress-Plugin, das Daten von der vTiger Webservice-API abfragt. Ich lese das Tutorial (https://wiki.vtiger.com/index.php/Webservices_tutorials#QueryResult) und kenne die Referenz (https://wiki.vtiger.com/index.php/Webservice_reference_manual). Im Tutorial verwenden Sie Zend-JSON und HTTP_Client. Ich benutze cURL (weil es installiert wurde und ich dachte, es wäre einen Versuch wert, es zu benutzen, bevor ich andere Dienstprogramme installiere). Es funktioniert ganz gut und ich kann mich mit unserem API-User bei vTiger anmelden und die Anfragen senden. Was ich erhalte, ist so etwas wie diese:Ergebnis von vTiger webservice

array(2) { 
    ["success"]=> 
    bool(true) 
    ["result"]=> 
    array(4) { 
    ["sessionName"]=> 
    string(21) "4d103e2058f9d365c22ff" 
    ["userId"]=> 
    string(4) "19x9" 
    ["version"]=> 
    string(4) "0.22" 
    ["vtigerVersion"]=> 
    string(5) "6.5.0" 
    } 
} 

Sieht mir sehr gut, aber das, was ich bin fehlt ist die Ist-Daten aus meiner Anfrage.

Das ist mein PHP-Code:

$vtiger->initCurl(); 
    $challengeToken = $vtiger->getChallengeToken(); 
    $sessionId = $vtiger->getSessionId($challengeToken); 
    $result = $vtiger->query($sessionId, "SELECT firstname FROM 'Contacts' WHERE lastname = 'XXX';"); 
    $wpdb->replace($wpdb->prefix.$_CONFIG['dbtable'], array('id' => 1, 'syncfields' => $result), array('%d', '%s')); 
    $vtiger->logout($sessionId); 
    $vtiger->closeCurl(); 
    $result = json_decode($result, true); 
    return var_dump(($result['success']) ? $result : "Error"); 

Was ich fehle den Vornamen (oder einen anderen Wert aus der vTiger-DB) zu bekommen?

Im Code schreibe ich gerade die Antwort auf die wp-db (extra-Tabelle).

Danke,

Nico

Antwort

1

vtiger Ergebnis Rückkehr in Array-Format. Sie sollten Ihren Code

$vtiger->initCurl(); 
$challengeToken = $vtiger->getChallengeToken(); 
$sessionId = $vtiger->getSessionId($challengeToken); 
$result = $vtiger->query($sessionId, "SELECT firstname FROM 'Contacts' WHERE lastname = 'XXX';"); 
$syncfield = result['0']; 
$wpdb->replace($wpdb->prefix.$_CONFIG['dbtable'], array('id' => 1, 'syncfields' => $syncfield), array('%d', '%s')); 
$vtiger->logout($sessionId); 
$vtiger->closeCurl(); 
$result = json_decode($result, true); 
return var_dump(($result['success']) ? $result : "Error"); 

Auch ändern Sie vtiger CRM Webservice-Client-Bibliothek http://forge.vtiger.com/projects/vtwsclib/

verwenden können