首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP - Oracle DB搜索不起作用

PHP - Oracle DB搜索不起作用
EN

Stack Overflow用户
提问于 2014-05-02 17:15:43
回答 1查看 889关注 0票数 0

我有一个页面,允许用户搜索他们的名字。到目前为止,我已经尝试过几种方法,包括oci_bind_by_name,但没有从查询中获得任何结果。以下是我的当前代码:

代码语言:javascript
复制
if(isset($_GET['FirstName_Search'])){
    $stid_check = oci_parse($conn, 'SELECT ID,UserName,Prefix,FirstName,LastName,Suffix,Title,Phone,Email,Department FROM WCM_People WHERE FirstName LIKE '%$FirstName%' ORDER BY LastName,FirstName');

    // bind values to the parameters in the parsed sql string
    //oci_bind_by_name($stid_check, ":FirstName", $FirstName);
    //oci_bind_by_name($stid_check, ":LastName", $LastName);
    $r = oci_execute($stid_check);
    while ($row = oci_fetch_array($stid_check, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>";
    foreach ($row as $item) {
    echo "<td>" . $item . "</td> \n";
    }
    echo "</tr>";
}

    // free the sql statement when finished
    oci_free_statement($stid_check);
}

下面是随之而来的警告和错误:

代码语言:javascript
复制
   Warning: Division by zero     
   Warning: oci_fetch_array(): ORA-24338: statement handle not executed

它说ORA-24338错误来自这一行:

代码语言:javascript
复制
while ($row = oci_fetch_array($stid_check, OCI_ASSOC+OCI_RETURN_NULLS)) {
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-02 17:44:22

按照OP的要求结束这个问题。

使用双引号更改查询:

($conn, "SELECT ID,... LIKE '%$FirstName%' ORDER BY LastName,FirstName")

您正在使用单引号进行搜索查询,同时也将查询包装在单引号中,这将不能正确地呈现,进而会生成错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23433579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档