使用多个字段搜索oracle数据库

时间:2013-10-10 07:29:58

标签: php oracle

我正在使用此代码来搜索数据库,我在此代码中使用了4个字段,但此代码不会搜索数据库值。 这段代码中的问题告诉我plz编辑我的代码用于4个字段的完整工作serach 我的代码:

       <?php
      {
     include ('connection.php');
       if(isset($_REQUEST['submit'])){

     $optid = $_POST['OPRID'];
     $optdec = $_POST['OPRDEFNDESC'];
     $empid = $_POST['EMPLID'];
      $empmail = $_POST['EMAILID'];
       $query ="SELECT  * FROM OPERATOR WHERE OPRID LIKE '%".$optid."%'  
        or OPRDEFNDESC LIKE '%".$optdec."%' or EMPLID LIKE '%".$empid."%'
        or EMAILID LIKE '%".$empmail."%' "; 

        }
    else{
  $query="SELECT * FROM OPERATOR";
$objParse = oci_parse ($ora_conn, $query);
    }
   ?>

  <form action="multi.php" method="get" action="<?=$_SERVER['SCRIPT_NAME'];?>">
  <table width="500" border="1" align="center">  
 <tr>  
 <th>Operator ID
<input name="OPRID" type="text" id="OPRID" value="";>  
<tr>  
<th>Operator Name
 <input name="OPRDEFNDESC" type="text" id="OPRDEFNDESC" value="";>  
  <tr>  
 <th>Person ID
 <input name="EMPLID" type="text" id="EMPLID" value="";>  
 <tr>  
 <th>Email ID
 <input name="EMAILID" type="text" id="EMAILID" value="";>  
 <input type="submit" value="Search"></th>  
 </tr>  
 </table>  
  </form> 
  <table>
 <tr>
     <td>Operator ID</td>
    <td>Operator Name</td>
    <td>Person ID</td>
     <td>Email ID</td>
  </tr>
  <?  

  $success = oci_execute($objParse);
 //while($objResult = oci_fetch_array($objParse,OCI_BOTH)) 
 while($objResult = oci_fetch_array($objParse, OCI_RETURN_NULLS+OCI_ASSOC)) 

 {  

 ?>  
 <tr>  
  <td><div align="center"><?=$objResult["OPRID"];?></div></td>  
  <td><?=$objResult["OPRDEFNDESC"];?></td>  
  <td><?=$objResult["EMPLID"];?></td>  
  <td><div align="center"><?=$objResult["EMAILID"];?></div></td> 
  <td align="center"><a  href="Optr_Edit.php?OprID= 

  <?=$objResult["OPRID"];?>">Edit</a></td> 
  </tr>  
   <?  
    }  
    ?>  
  </table>  
  <?  
 oci_free_statement($objParse);
  oci_close($ora_conn); 
  }
  ?>  

3 个答案:

答案 0 :(得分:1)

你做错了

选择元素没有值属性

您只在options元素中拥有value属性。

例如:

<select name="txtENCRYPTED" id="txtENCRYPTED">
    <option value="">Select</option>
    <option value="Y">Y</option>
    <option value="N">N</option>
</select>

答案 1 :(得分:0)

试试这个

<tr>
  <td><div align="right"><strong>Password&nbsp;Encrypted:</strong></div></td>
  <td>
      <select name="txtENCRYPTED">
          <option value="">Select</option>
              <option <?php if ($objResult["ENCRYPTED"] == "Y") {echo 'selected';} ?>value="Y">Y</option>
    <option <?php if ($objResult["ENCRYPTED"] == "N") {echo 'selected';} ?> value="N">N</option>      
      </select>
   </td>
</tr> 

答案 2 :(得分:0)

在您的代码中,您提供了db-repaived-data in tags设置。 标签定义菜单。它可以具有以下设置 名称设置会在字段中添加内部名称,以便处理表单的程序可以识别字段。 大小选项定义一次应显示的项目数。默认是一个项目。 如果存在,多重设置将允许多个选择。

标签定义菜单中的单个项目。 设置定义了选择项目时将提交的内容。

一种解决方案: -

    <form  method="post" action="" >
    <select name="encrypt" value="encrypted" id='select'>
     <option value="">Select</option>
     <option value="<?php if($objResult["ENCRYPTED"]=='Y'){ echo 'Y'; } ?>">Y</option>
     <option value="<?php if($objResult["ENCRYPTED"]=='N'){ echo 'N'; } ?>">N</option>     
  </select>
 <input type="submit" value="submit" id='form'/>
</form>
</td>
</tr> 

//script type jquery.js 
//script type javascript

 $(document).ready(function(){
    $('form').submit(function(){
       alert($('#select').val());
    });
});
</script>