[英]Why oci_num_rows always return 0 value?
我有这个问题的代码:
<?php
include 'connection.php';
if (oci_execute ( $stmt )) {
//Execute cursor
oci_execute($result); //Or you can return the cursor.
}
$count=oci_num_rows($result);
echo $count;
if ($count != 1)
{
echo $count;
echo "No record";
}
else
{
while($objResult = oci_fetch_array($result, OCI_RETURN_NULLS+OCI_ASSOC)){
<tr>
<td><div align="center" class="style4"><?php echo $objResult[0]; ?></div></td>
<td><div align="center" class="style4"><?php echo $objResult[1]; ?></div></td>
<td><div align="center" class="style4"><?php echo $objResult[2]; ?></div></td>
<td><div align="center" class="style4"><?php echo $objResult[3]; ?></div></td>
<td><div align="center" class="style4"><?php echo $objResult[4]; ?></div></td>
<td><div align="center" class="style4"><?php echo $objResult[5]; ?></div></td>
<td><div align="center" class="style4"><?php echo $objResult[6]; ?></div></td>
<td><div align="center" class="style4"><?php echo $objResult[7]; ?></div></td>
<td><div align="center" class="style4"><a href="updateInsForm.php?insid=<?php echo $objResult[0]; ?>">EDIT</a></div></td>
<td><div align="center" class="style4"><a href="deleteInsForm.php?insid=<?php echo $objResult[0]; ?>">DELETE</div></td>
<?php
}
}
oci_close($objConnect);
?>
问题是当我尝试输入正确的ID和密码时,它返回的行为0 ..为什么?
问题在于num_rows函数返回已获取的项目数,而不是执行的结果。 从手册:
http://php.net/manual/zh/function.oci-num-rows.php
注意:此函数不返回选择的行数! 对于SELECT语句,此函数将返回通过oci_fetch *()函数提取到缓冲区的行数。
希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.