Php 如何正确查询vTiger CRM API

Php 如何正确查询vTiger CRM API,php,api,vtiger,Php,Api,Vtiger,我得到一个sql查询: $vtiger->query('*', 'Products', "(productname LIKE '%$name%' OR description LIKE '%$name%') AND cf_1007 = 'Ready'", null, 50, null); (使用)。它有一个WHERE子句。如何使它正确?(当前查询引发异常)。我需要获取productname或description包含%name%的所有行以及单元格cf\u 1007=“Ready”的所有

我得到一个sql查询:

$vtiger->query('*', 'Products', "(productname LIKE '%$name%' OR description LIKE '%$name%') AND cf_1007 = 'Ready'", null, 50, null); 
(使用)。它有一个WHERE子句。如何使它正确?(当前查询引发异常)。我需要获取productname或description包含%name%的所有行以及单元格cf\u 1007=“Ready”的所有行

UPD:来自vTiger API的答案(忘记在此处添加)


我对这个问题进行了深入研究,发现如下: 您正在使用的API向VTIGER web服务发送请求。API中没有任何错误,而且您的使用似乎很好。所以,下一站将是检查Web服务文档

然后我偶然发现了以下情况:

SELECT * | <column_list> | <count(*)> FROM <object> [WHERE
<conditionals>] [ORDER BY <column_list>] [LIMIT [<m>, ] <n>]
从[WHERE]中选择*||
][订货人][限额[,]]
请注意零件的说明:

以分隔 '和'或'或'运算符这些运算符是从左到右处理的。这个 没有使用括号运算符的分组


因此,似乎不能使用
(field1=val1或field2=val2)和field3=val3
格式。您应该使用
field1=val1或field2=val和field3=val3
由于第一个
)出现语法错误

尝试删除它,然后更改

(A OR B) AND C
为了


例外情况是什么?您的代码似乎是合法的,请按照@Egl question@Egl添加到问题中,忘记添加检查我的答案,我希望这会有所帮助。由于“(”,出现语法错误。请尝试删除它,更改(a或B)和C表示a和C或B和C。谢谢,但…我知道它,这就是我在这里的原因:)当我启动脚本时,它不起作用。当我启动脚本时,查询字符串中没有brakets,我得到了错误的查询结果(有太多字符串,其中最后一个字段不等于'Ready')。Idk在这种情况下如何对我的查询进行分组:(
(A OR B) AND C
A AND C OR B AND C