0

这可能是一个非常明显的错误。无论如何,一些细节:

我有一个 oracle 数据库,我需要从中提取数据以填充 PHP 页面上的表。该表称为 Flowers,具有 Name、Price 和 Stock 列。

我遇到问题的PHP代码部分是:

$titlevalue = Trim($_REQUEST['search']);
$query = "SELECT * FROM FLOWERS WHERE NAME = '$titlevalue'";

$stmt = OCIParse($connect, $query); 
if(!$stmt) {
    echo "An error occurred in parsing the sql string.\n"; 
    exit; 
}
OCIExecute($stmt);

当我在我的数据库上使用不同的表时,我的 PHP 的其余部分可以完美地工作,这是我作为测试所做的。以防万一,这是打印查询结果的代码(它是 HTML 表的一部分,但您可以忽略它):

while(OCIFetch($stmt)) {
    echo "<tr valign=top bgcolor=#F7D4A3>";
    $fg1 = OCIResult($stmt,"NAME");
    echo "<td width=75>";
    echo $fg1;
    echo "</td>";
// Display values in column two.
    $fg2 = OCIResult($stmt,"PRICE");
    echo "<td width=75>";
    echo ($fg2);
    echo "</td>";
// Display values in column three
    $fg3 = OCIResult($stmt, "STOCK");
    echo "<td width=75>";
    include($fg3);
    echo "</td>";
    echo "</tr>";
} 

无论 $titlevalue 变成什么,我都无法使用此表获得结果。我也用 generic 对其进行了测试$query = "SELECT * FROM FLOWERS";,但这也没有产生任何结果。

有人可以帮忙吗?:(这是一个非常漫长的夜晚。

4

1 回答 1

0

如果可以的话,有两点需要注意:

1)你正在使用'$titlevalue',我认为这将在查询中翻译为... $titlevalue,而不是它的值

2)它迟到了......你有没有检查过你的桌子叫做FLOWERS(区分大小写)

我会发表评论,但我没有代表这样做。

如果这有帮助,请 +1 或单击标记。我通常在执行 sql 查询时尝试使用完整格式

SELECT * FROM `table name` WHERE 'x' 

...等可能的情况下

于 2013-10-06T23:44:12.973 回答