我使用的是PHP 5.4.7版本
最初,当我试图访问我的自定义php网站的主页时,我遇到了一个Fatal error: Call to undefined function Connect() in C:'htdocs'mods'conn.php on line 15
,我已经有一段时间没有访问了,并且已经更新了我的php版本。
经过一番调查,我更改了conn.php
include_once ("DB.php");
include_once ("mods/DB.php");
现在,由于某些原因,我不知道,页面工作正常,显示没有错误。直到尝试使用审计跟踪模块,这时初始错误又回来了。
Fatal error: Call to undefined function Connect() in C:'htdocs'mods'conn.php on line 15
回来。
url为:http://project/audit/monthly.php?year=2014&month=11
所以我认为错误是在monthly.php
,但现在我认为它必须是一个参考的问题。所以我看了看monthly.php
,发现它使用了许多文件,最明显的是:
require_once 'header.php';
报头使用conn.php
和:
require_once ("mods/conn.php");
我不确定如何继续这里作为conn.php和大小写的拼写是正确的。
Conn.php
//include_once ("DB.php");
include_once ("mods/DB.php");
include_once ("date.php");
include_once ("forms.php");
include_once ("sess.php");
include_once ("utilities.php");
//--- define user types
ConnectToDB ("localhost", None, "audit", "abc", "pass");
// Zend Auto loader....
**> NOT ADDED**
$db = Zend_Db::factory("PDO_MYSQL", array
(
"host" => 'localhost',
"username" => 'abc',
"password" => 'pass',
"dbname" => 'audit'
));
?>
DB.php
<?php
function Connect ($Host, $Port, $DBName, $User, $Password) {
**A custom connect function**
}
?>
我想到了一个使用绝对路径的解决方案,所以在conn.php
中将include_once ("mods/DB.php");
更改为:include_once('C:''htdocs''mods''DB.PHP');
。
在您的情况下,我会创建一个包含define('MOD_PATH', 'mods/')的文件;然后在'conn.php'出现的地方使用MOD_PATH,这样做会更明智,因为这样你就不需要在每个文件中放入mod,而是在一个文件中…