我正在运行 lamp 服务器来开发 php。在我尝试我的脚本之前,一切都运行良好。我有一个 html 表单文件,提交到服务器后会生成一个 php 文件,html 文件运行正常,但是,php 文件却无法正常工作。提交表单后,查看页面源代码时,我得到的是一个空白页面,其中没有代码行。我已经确认这两个文件都在我的根目录 /var/www/html 中。我还确认了 html 页面指向正确的 php 文件,检查了两个文件名,重新启动了 apache2 服务器并清除了缓存。这些都不起作用。您还有其他想法吗?感谢您抽出时间,berga007
我的一些代码示例
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>1 st Registation form!</title>
<!--begining of internal css-->
<style>
#p1 {
font-family: verdana;
color: red;
font-size: 25px;
text-align: center;
}
p {
font-family: verdana;
color: blue;
font-size: 15px;
text-align: left;
}
</style>
</head>
<body>
<!--Register.html registation form using xhtml-->
<p id= "p1">Please complete this form to submit your registation in our website:</p>
<form action= "handle_reg.php" method= "post">
...
</form>
</body>
</html>
下面是我的一些 php 代码示例
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Your registation</title>
</head>
<body>
<?php
//Display errors and error reporting
ini_set ('display_errors, 1');
error_reporting (E_ALL ~E_NOTICE);
//Register Globals disabled
$first_name=$_POST['first_name'];
$last_name=$_POST['last_name'];
$email=$_POST['email'];
$password=$_POST['password'];
$confirm_password=['confirm_password'];
$color=$_POST['color'];
$month=$_POST['month'];
$day=$_POST['day'];
$year=$_POST['year'];
print '<p>Registation results: </p>';
...
?>
</body>
</html>
答案1
您检查过 apache2 错误日志吗?
您的 php 代码中有拼写错误。您缺少&
。正确的是:
// Report all errors except E_NOTICE
error_reporting(E_ALL & ~E_NOTICE);
我强烈建议开发系统设置
display_errors = On
display_startup_errors = On
error_reporting = E_ALL
正如php.ini
我之前在评论中提到的那样。