插入vtiger表,php

时间:2017-07-26 19:37:08

标签: php vtiger

我有连接到vtiger的代码,现在我有问题将数据插入vtiger模块帐户。使用select语句我没有问题,它工作正常,但我无法插入数据。我想创建一个新的组织。

function call($url, $params, $type = "GET")
{
    $is_post = 0;
    if($type == "POST") {
        $is_post = 1;
        $post_data = $params;
    } else {
        $url = $url . "?" . http_build_query($params);
    }
    $ch = curl_init($url);
    if(!$ch) {
        die("Cannot allocate a new PHP-CURL handle");
    }
    if($is_post) {
        curl_setopt($ch, CURLOPT_POST, $is_post);
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
    }

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $data = curl_exec($ch);

    $return = null;
    if(curl_error($ch)) {
        $return = false;
    } else {
        $return = json_decode($data, true);
    }

    curl_close($ch);

    return $return;
}

$endpointUrl = 'http://localhost/vtigercrm/webservice.php';
$userName = 'username';
$password = 'pass';
$userAccessKey = 'acckey';

$sessionData = call($endpointUrl, array(
    "operation" => "getchallenge",
    "username" => $userName
));
$challengeToken = $sessionData['result']['token'];
$generatedKey = md5($challengeToken . $userAccessKey);
$dataDetails = call($endpointUrl, array(
    "operation" => "login",
    "username" => $userName,
    "accessKey" => $generatedKey
), "POST");
$query = "INSERT INTO Accounts(accountname) VALUES ('some_name');";
$sessionid = $dataDetails['result']['sessionName'];
$getUserDetail = call($endpointUrl, array(
    "operation" => "query",
    "sessionName" => $sessionid,
    'query' => $query
));

1 个答案:

答案 0 :(得分:0)

要使用Web服务创建对象,您应该使用“创建”操作而不是“查询”

您可以查看网络服务教程:

https://wiki.vtiger.com/index.php/Webservices_tutorials#Create