PHP我的查询在phpmyadmin中工作,但在我的代码中没有

时间:2016-03-08 08:55:48

标签: php mysql vtiger

所以我使用此查询来获取有关更改的详细信息并将其邮寄。它之前的工作是当seconde内部连接丢失,但我做什么我不能使它工作。在phpmyadmin它工作,我得到我的行,但在我的PHP我得到0行。我很想知道我在这里做错了什么。

$query = "SELECT * FROM vtiger_modtracker_detail WHERE id = (SELECT vtiger_modtracker_detail.id FROM vtiger_modtracker_detail " .
"INNER JOIN vtiger_modtracker_basic ON vtiger_modtracker_basic.id = vtiger_modtracker_detail.id " .
"INNER JOIN vtiger_crmentity ON vtiger_crmentity.modifiedtime = vtiger_modtracker_basic.changedon " .
"WHERE vtiger_crmentity.crmid = ? ORDER BY vtiger_modtracker_detail.id DESC LIMIT 1);";

$res = $adb->pquery($query, array($id[1]));
$row = $adb->num_rows($res);

编辑:

我简化了查询但没有改变。

$query = "SELECT * FROM vtiger_modtracker_detail WHERE id = (SELECT vtiger_modtracker_basic.id FROM vtiger_modtracker_basic " .
"INNER JOIN vtiger_crmentity ON vtiger_crmentity.modifiedtime = vtiger_modtracker_basic.changedon " .
"WHERE vtiger_crmentity.crmid = 42 ORDER BY vtiger_modtracker_basic.id DESC LIMIT 1)";

这可能是因为我在INNER JOIN中比较日期。

编辑2:在pquery()中丢失$但是这并没有解决它。我找到了一个解决方案,所以我不再需要使用此查询了。但如果有人知道我想知道的查询有什么问题。

编辑3:解决方法不起作用仍需要答案。

1 个答案:

答案 0 :(得分:0)

在查询中的每个名称前添加'

SELECT 'vtiger_modtracker_detail.id' FROM 'etc', 'etc2'