Php 致命错误:对未定义函数的调用正在工作,然后再次失败?

Php 致命错误:对未定义函数的调用正在工作,然后再次失败?,php,mysql,fatal-error,Php,Mysql,Fatal Error,我使用的是PHP版本5.4.7 最初,我遇到了一个致命错误:在试图访问我的自定义php网站主页时,调用了第15行的C:\htdocs\mods\conn.php中未定义的函数Connect(),,我已经有一段时间没有访问过该网站了,并且更新了我的php版本 经过一些调查,我在conn.php include_once ("DB.php"); 到 现在由于某种原因,我不知道,页面运行良好,显示没有错误。 在尝试使用审计跟踪模块之前,初始错误会返回 致命错误:调用第15行C:\htdocs\mod

我使用的是PHP版本5.4.7

最初,我遇到了一个
致命错误:在试图访问我的自定义php网站主页时,调用了第15行的C:\htdocs\mods\conn.php中未定义的函数Connect(),
,我已经有一段时间没有访问过该网站了,并且更新了我的php版本

经过一些调查,我在
conn.php

include_once ("DB.php");

现在由于某种原因,我不知道,页面运行良好,显示没有错误。 在尝试使用审计跟踪模块之前,初始错误会返回

致命错误:调用第15行C:\htdocs\mods\conn.php中未定义的函数Connect()

再来一次

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和case的拼写是正确的。它以前也有用

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'
));

?> 
<?php
function Connect ($Host, $Port, $DBName, $User, $Password) {

    **A custom connect function**

}
?>
DB.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'
));

?> 
<?php
function Connect ($Host, $Port, $DBName, $User, $Password) {

    **A custom connect function**

}
?>


在您的情况下,我会制作一个包含define('MOD_PATH','mods/')的文件;然后到处使用MOD_PATH,在“conn.php”出现的地方,这样做会更明智,因为这样你就不需要把MOD放在每个文件中,而是放在一个。。。好的,这是我的观点,从我开始…

我想到了一个使用绝对路径的解决方案,所以在
conn.php
change
include_once(“mods/DB.php”)
to:
include_once('C:\\htdocs\\mods\\DB.PHP')


.

共享您的conn.php文件。您真的没有给我们足够的资源来继续。我们需要更多的程序流。将所有include()替换为require(),您将在fail-to-include=>上生成一个致命错误,更容易跟踪失败路径。PHP中没有内置的connect()函数,您的意思可能是
mysql\u connect()
?无论如何都不推荐使用…“连接”!==“连接到B”,不是吗?