WampServer を 2.2 (Apache 2.4.2; PHP 5.4.3; MySql 5.5.24) にアップグレードしてから、以前に作成した php プログラムを実行すると常にエラーが発生します。解決方法がわかりません。アドバイス。ありがとう。今回発生した問題は次のとおりです。
上の図は、ソース コードが配置されているフォルダーを示しています。
index.phpは「www/ARTivismInventory/admin/」に保存されます;
関数のソースコードglobal.inc.phpとpic_functions.phpは「www/ARTivismInventory/admin/includes/」に保存されます
UserToolsなどのクラスのソースコード。 class.php や DB .class.php などは「www/ARTivismInventory/admin/classes/」に保存されます
Index.php ソースコードの一部:
<?phprequire_once 'includes/global.inc.php';$modul_name=$_REQUEST['modul_name']?$_REQUEST['modul_name']:"main";//$objPages=new Pages();//$page_id=$objPages->getPageID($modul_name);?><html><head><title>Content management System</title><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"><link rel="stylesheet" href="css/admin.css" type="text/css"><script src="images/editer.js"></script><script src="images/menu.js"></script></head><body>········</body></html>
<?php//start the sessionsession_start();require_once 'classes/User.class.php';require_once 'classes/UserTools.class.php';require_once 'classes/DB.class.php';require_once 'classes/Group.class.php';require_once 'classes/Contact.class.php';require_once 'classes/Profile.class.php';//require_once 'classes/Pages.class.php';require_once 'pic_functions.php';//connect to the database$db = new DB();$db->connect();//initialize UserTools object$userTools = new UserTools();·······?>
<?//UserTools.class.phprequire_once 'User.class.php';require_once 'DB.class.php';class UserTools {········}?>
require_once '../classes/User.class.php';
次のクラスの包含をこれに変更してみてください。
次のクラスの包含をこれに変更してみてください
これを試した後、エラーは次のようになります:
また、変数を参照する場合、関数に配置するとエラーが報告されます( ) 最初にそれらを個別に定義してから参照すれば問題ありません
//UserTools.class.php
明白ではありませんか?プログラムは短いタグのサポートをオンにする必要がありますが、PHP のデフォルト設定はオフになっています