要求PHP不起作用

时间:2015-05-01 08:20:46

标签: php require

我正在用PHP编写一个未完全完成的代码。当我在浏览器中打开此register.php脚本时,只有一个空白页面,因为我无法克服require('config.php')。当我删除require('config.php')时,所有内容都会显示在浏览器中。

你能帮助我并告诉我require

有什么问题吗?
<?php

require('config.php');
if (isset($_POST['submit'])) {
} else {
    $form = <<<EOT
<form action="register.php" method="POST">
First Name: <input type="text" name="name" /> <Br/>
Last Name: <input type="text" name="lname" /> <Br/>
Username: <input type="text" name="uname" /> <Br/>
Email: <input type="text" name="email1" /> <Br/>
Email2: <input type="text" name="email2" /> <Br/>
Pass: <input type="password" name="pass1" /> <Br/>
Pass2: <input type="password" name="pass2" /> <Br/>
<input type="submit" value="register" name="submit" />      
</form>
EOT;
    echo $form;
}

2 个答案:

答案 0 :(得分:6)

这是因为<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 函数会查找文件require。如果找不到,则会出错。只有在文档中放入以下行时,才会显示此错误:

config.php

取自PHP documentation

  

要求与包含相同,除非失败时也是如此   产生致命的E_COMPILE_ERROR级别错误。换句话说,它会   暂停脚本,而include只发出一个警告(E_WARNING)   允许脚本继续。

     

请参阅包含文档,了解其工作原理。

如果您希望PHP在找不到文件时没有给您错误,您可以将ini_set("display_errors", 1); error_reporting(E_ALL); 替换为require。这意味着当它找不到文件时,它仍会在之后运行代码。

要解决实际问题,您可以检查include是否在正确的位置。如果不是这种情况,请在config.php所在的同一文件夹中创建名为config.php的文件。

如果您的register.php位于正确的位置,请检查该文件是否有任何错误,如果有,则config.php功能也不起作用。

答案 1 :(得分:0)

说明: - 如果你使用require('config.php'),就会发生这种情况。这意味着它必须拥有文件“config.php”,如果php无法找到该文件而不是它会给你一个致命的错误,但正如你所说它没有显示你的 php中的任何意思.ini 文件display_error已关闭或未设置error_reporting。

所以你需要设置error_reporting = E_ALL或 error_reporting = E_ALL |在php.ini文件中使用E_STRICT和display_errors = On,或者你可以使用php代码中的命令将其打开 ini_set(“display_errors”,1);
error_reporting(E_ALL);。

要求: - require将产生致命错误(E_COMPILE_ERROR)并停止脚本。
包含: - include只会产生警告(E_WARNING),脚本会继续。