2013-10-02 58 views
0

我将PHP与Oracle数据库结合使用。我想要的是以下内容:在第一种形式中,我想从数据库中的表中选择一个名称,并且当您按下按钮时,我希望用户看到一个html表单,其中的字段填入了来自在第一个屏幕上选择的人。您可以编辑这些信息,当您按下更新按钮时,表格必须更新。我不知道在PHP中与Oracle合并完成整个流程的人员。有人可以帮帮我吗?这是我正在做的一个项目的重要组成部分,我无法在任何地方找到任何信息! 我真的希望有人能帮助我。
PHP & Oracle数据库编辑/更新数据。 上< < <歌厅错误Undefined variable: objResult -----这里PHP和Oracle数据库编辑/更新数据

<? 
    $objConnect = oci_connect("myuser", "mypassword", "TCDB"); 
    $strSQL  = "SELECT * FROM CUSTOMER"; 
    $objParse = oci_parse($objConnect, $strSQL); 
    oci_execute($objParse, OCI_DEFAULT); 
?> 
      <table width="600" border="1"> 
      <tr> 
      <th width="91"> <div align="center">CustomerID </div></th> 
      <th width="98"> <div align="center">Name </div></th> 
      <th width="198"> <div align="center">Email </div></th> 
      <th width="97"> <div align="center">CountryCode </div></th> 
      <th width="59"> <div align="center">Budget </div></th> 
      <th width="71"> <div align="center">Used </div></th> 
      <th width="30"> <div align="center">Edit </div></th> 
      </tr> 
<? 
    while ($objResult = oci_fetch_array($objParse, OCI_BOTH)) 
    { 
?> 
      <tr> 
      <td><div align="center"><?= $objResult["CUSTOMERID"]; ?></div></td> <<---here 
      <td><?= $objResult["NAME"]; ?></td> <<---here 
       <td><?= $objResult["EMAIL"]; ?></td> <<---here 
       <td><div align="center"><?= $objResult["COUNTRYCODE"]; ?></div></td> 
       <td align="right"><?= $objResult["BUDGET"]; ?></td> <<---here 
        <td align="right"><?= $objResult["USED"]; ?></td> 

      <td align="center"><a href="php_oracle_update2.php?CusID=                     <?=$objResult["CUSTOMERID"];?>">Edit</a></td>  
       </tr> 
       <? 
       } 
       ?> 
       </table> 
<? 
    oci_close($objConnect); 
?>  

回答

0

这个错误可能意味着您的php.ini中没有启用short_open_tag,并且由于PHP实际上在您的模板中看不到任何代码。只有<?= ... ?>标签正在工作,而<? ... ?>则不是。

您的选择:

  1. short_open_tag = On在你的php.ini。或者,
  2. 采用全<?php ... ?>标签,而不是

而且,while循环是不完整的。尝试:

<? 
    while ($objResult = oci_fetch_array($objParse, OCI_BOTH)): 
?> 

    // ... 

<? 
    endwhile; 
?> 
+0

我看不到设置short_open_tag的值为=开在php.ini plz帮助 – praveen

+0

您应该使用这是最好的做法。无论如何,只需在php.ini底部(任意位置)添加该行,重新启动服务器即可。也许试试这个排除故障http://stackoverflow.com/questions/12579448/php-short-open-tag-on-not-working同时检查出http://php.net/short-open-tag – abstr

+0

谢谢Abstr先生......现在工作...... !!!谢谢 – praveen

1

while循环,很可能只会在第一线工作。确保每个循环都使用{ },无论是一行还是多行。