<?php
if( !defined("PHYSICS_PATH") ) {
define( "PHYSICS_PATH", dirname(__FILE__)."/" );
}$servername = "localhost";
$dbname     = "mydb";
$dbusername = "root";
$dbpassword = "123456";if( !mysql_connect($servername, $dbusername, $dbpassword) ) {
echo "数据库连接失败!请与管理员联系!";
exit;
}
else {
if( !mysql_select_db($dbname) ) {
echo "数据库不存在!";
exit;
}
}
?>
<html>
<head>
<title>PHP连接测试</title>
</head>
<body>
</body>
</html>上面的代码,加了前面三行就返回空白页,点击页面的“查看源代码”连html标签都没有,也是空白的,请问怎么回事?把前三行去掉,可以正常返回。
如果写成if(!@mysql_connect($servername, $dbusername, $dbpassword))也返回空白页,(也就是加了@)
php.ini文件里的显示错误也设置成on了如果一个页面只写上<?php echo "测试" ?>运行就会正常报错,语法错误
奇怪

解决方案 »

  1.   

    <?php echo "测试";?>这样呢?
      

  2.   

    怎么会漏了"<?php" ??
    我所有的代码都是放在一个<?php ?>标签了呀不解?感谢楼上的支持
      

  3.   

    代码没有问题,清空cache,再试试。
      

  4.   

    你的数据库没有连接成功,exit了html写在?>之后相当于 echo html在?>之内
      

  5.   

    看错了,你在exit之前还输出了
      

  6.   

    去掉前面三行可以正常运行,没报错如果去掉前面三行下面连接数据库的代码写成if( !@mysql_connect($servername, $dbusername, $dbpassword) )也不会返回什么结果,空白连HTML标签都不会出,也不报错感谢各位的热心支持问题继续
      

  7.   

    问题找到,权供大家参考PHP代码完全没有问题照理说页面有HTML代码Apache应该返回但是页面什么都没有,登录服务器查看了一下事件日志,乖乖~~出错如下:错误应用程序 httpd.exe,版本 2.2.14.0,错误模块 php5ts.dll,版本 5.2.2.2,错误地址 0x0000a8ea。原来是http.exe自动抛弃了客户端的请求,所以连HTML标签都没有返回OK,依照事件日志的提示,将PHP目录的libmysql.dll复制到C:/windows/system32目录下,问题得到完美解决