PHP未正确解析查询结果

PHP未正确解析查询结果,php,mysql,sybase,Php,Mysql,Sybase,当我运行一些PHP代码时,我遇到了无法解释的错误。我正在从PHP运行一个查询 警告:sybase\u查询[函数.sybase查询]:sybase:Server 消息:“=”附近的语法不正确。严重性15,程序不适用 第20行的C:\xampp\htdocs\wil\Testen\ZKO backend\php\ui_table.php 以及: 警告:sybase_fetch_数组期望参数1是资源, 中给出的布尔值 第21行的C:\xampp\htdocs\wil\Testen\ZKO backen

当我运行一些PHP代码时,我遇到了无法解释的错误。我正在从PHP运行一个查询

警告:sybase\u查询[函数.sybase查询]:sybase:Server 消息:“=”附近的语法不正确。严重性15,程序不适用 第20行的C:\xampp\htdocs\wil\Testen\ZKO backend\php\ui_table.php

以及:

警告:sybase_fetch_数组期望参数1是资源, 中给出的布尔值 第21行的C:\xampp\htdocs\wil\Testen\ZKO backend\php\ui_table.php

调用的查询在Sybase中运行良好,相同的例程在类似的查询中运行良好

我得到了查询传递的每个记录的错误,因此我认为问题应该出在PHP代码中,它无法处理查询的输出

查询:

<?PHP
$subquery= "SELECT distinct
ds_u_in.DATASET_ID,
 ds_u_in.USED_INSTRUMENT_ID,
 '<td>' + inv_in_type.NAME +'</td>' AS LONG_TABLEROW,
 '<td>' + per_org_man.NAME +'</td>' AS LONG_TABLEROW2,
 '<td>' + inv_in.SERIAL +'</td>' AS LONG_TABLEROW3,
 '<td>' + per_org.NAME +'</td>' AS LONG_TABLEROW4,
 '<td>' + inv_in.DEPARTMENT +'</td>' AS LONG_TABLEROW5

FROM 
 dataset..DATASET_USED_INSTRUMENT ds_u_in,
 inventory..USED_INSTRUMENT inv_u_in,
 inventory..INSTRUMENT_TYPE inv_in_type,
 inventory..INSTRUMENT inv_in,
 person..ORGANISATION per_org_man,
 person..ORGANISATION per_org

WHERE ds_u_in.USED_INSTRUMENT_ID = inv_u_in.USED_INSTRUMENT_ID
  AND inv_u_in.INSTRUMENT_TYPE_ID = inv_in_type.INSTRUMENT_TYPE_ID
  AND inv_u_in.INSTRUMENT_ID *= inv_in.INSTRUMENT_ID
  AND per_org_man.ORGANISATION_ID =* inv_in_type.MANUFACTURER_ORGANISATION_ID
  AND per_org.ORGANISATION_ID =* inv_in.ORGANISATION_ID
  AND ds_u_in.USED_INSTRUMENT_ID = {K} ";
?>
在执行查询之前,{K}被整数替换

显示结果的Php代码:

            for ($k = 1; $k <= $_SESSION[$name]; $k++) {
            $mysubquery=sybase_query(str_replace('{K}',$_SESSION[$name.'_'.$k],$subquery));
            $subrow = sybase_fetch_array($mysubquery);
            if ($subrow)  { 
                if (isset($subrow["LONG_TABLEROW"])) {
                    if(strlen($subrow["LONG_TABLEROW"]) >=1) {
                        echo "<tr>".$subrow["LONG_TABLEROW"];
                        for ($l = 2; $l <= 9; $l++) {
                            if (isset($subrow["LONG_TABLEROW".$l])) {
                                if (strlen($subrow["LONG_TABLEROW".$l]) >=1) {
                                    echo $subrow["LONG_TABLEROW".$l];
                                }
                            }
                        } 
                    } 
                }
                echo '<td><img onclick="javascript:DeleteLine())" src="images/trash.png" /> ';
                if ($k == $_SESSION[$name] ) { 
                    echo 'add' ;
                }
                echo '</td></tr>';
            }
        }

有人看到这里出了什么问题吗?

看起来您的查询失败了,返回错误。您使用的数据库是否正确?设置连接时是否选择了数据库?它确实需要知道在哪个数据库中搜索表等等。通常使用数据库名就足够了吗?var_dump$subgrow产生了什么?var_dump没有输出,只是出现了一个额外的错误:警告:sybase_fetch_数组期望参数1是资源,布尔值在第19行的C:\xampp\htdocs\wil\Testen\ZKO backend\php\ui_table.php中给出。发现了错误!变量{k}被设置为空。问题必须在代码的完全不同部分。