PHP – require_once在多个页面中
作者:互联网
我正在使用LAMP堆栈来开发PHP应用程序.我使用require_once来包含类文件.我需要在多个PHP页面中使用这些类文件中的函数.所以,我使用require_once在所有必需的PHP页面中包含这些类文件.但是,如果我将这些类文件包含在多个页面中,则PHP文件将变为空白.它什么都没显示.查看源也不显示任何内容.
文件:test.php,process.php和class.test.php
test.php有
<?php
session_start();
require_once 'classes/class.test.php';
.
Few more classes
.
.
?>
<html>
<form name = "myForm" method="POST" action="process.php">
<input type = "text" name="username" value=""/>
<input type = "submit" value="Submit" />
</form>
</html>
process.php
<?php
session_start();
require_once 'classes/class.test.php';
$obj_test = new test();
$obj_test->test();
?>
class.test.php
<?php
session_start();
require_once 'class.misc.php';
require_once 'config.php'; //DB connection details
function test()
{
$obj_misc = new misc();
$id = $obj_misc->random_ID();
$username = $_POST['username'];
$query = "INSERT INTO test_table VALUES ('$id','$username',NOW());
mysql_query($query);
}
?>
现在,它返回一个空白页面.如果我在process.php中注释掉require_once,test.php页面会显示表单,但在提交表单时,process.php会抛出错误“找不到类测试”.
过去两周我一直在努力解决这个问题. :(之前工作正常.我不明白出了什么问题.请帮忙.
解决方法:
您在process.php的PHP代码中有错误;你错过了一个分号:
require_once 'classes/class.test.php'
应该:
require_once 'classes/class.test.php';
如果这不能解决问题,那么代码中可能存在其他错误.如果没有完整的来源,我们将无法做很多事情.
为了将来参考,如果页面变为空白,则PHP源代码通常存在问题(即,某种类型的解释错误).作为良好调试策略的一部分,请查看display_errors和error_reporting
标签:require-once,php 来源: https://codeday.me/bug/20190723/1511208.html