mysqli_query在一个包含中工作,而不是在另一个包含中

时间:2014-03-05 18:11:59

标签: php mysqli php-include

我有两个包含文件(fill_boxMain.php和fill_boxBottom.php)。两者都包含在我的index.php中,以便按顺序填写两个div的内容。

如:

<div><?php require_once 'includes/fill_boxMain.php' ; ?></div>   
<div><?php require_once 'includes/fill_boxBottom.php' ; ?></div>

第一个(fill_boxMain.php)工作正常。无论我如何安排或更改代码,第二个都会失败 - 并且具有相同的可重复错误。即mysqli_query($ dbc,$ q)失败。

SELECT查询在phpMyAdmin中正常工作。为了测试目的,我现在在'includes'中具有完全相同的前三行代码 - 如下所示。我已经阅读了SOF中的大量相关帖子,并尝试了建议,但没有任何效果。这就是我发现使用“throw new Exception()”而不是die()进行错误处理的建议 - 并重新编写了我的代码,如图所示。谢谢你。

<?php
require_once 'dbConnect.php' ; //open connection to $dbc
$q = "SELECT * FROM tunes ORDER BY `tunes`.`title` ASC";    
if (!$r = mysqli_query($dbc,$q)) { 
    throw new Exception("Error description: " . mysqli_error($dbc)) ;}  
?>

我得到的错误代码是:

  

警告:mysqli_query():无法在第4行的C:\ xampp \ htdocs \ Woodweb \ includes \ fill_boxBottom.php中获取mysqli

     

警告:mysqli_error():无法在第4行的C:\ xampp \ htdocs \ Woodweb \ includes \ fill_boxBottom.php中获取mysqli

     

致命错误:在C:\ xampp \ htdocs \ Woodweb \ includes \ fill_boxBottom.php中显示消息'错误描述:'的未捕获异常'异常':4堆栈跟踪:#0 C:\ xampp \ htdocs \ Woodweb \ index .php(31):在第4行的C:\ xampp \ htdocs \ Woodweb \ includes \ fill_boxBottom.php中抛出require_once()#1 {main}

那个'致命错误'看起来很重要,但我不知道这意味着什么。任何解决这个问题的帮助都表示赞赏。

1 个答案:

答案 0 :(得分:0)

您的问题似乎与dbConnect.php的require_once有关。我假设fill_main也通过require_once "dbConnect.php";调用db。如果遇到fill_bottom,则不会触发require_once,并且不会发生dbConnect.php代码。