【问题标题】:Blank page when connect to database连接数据库时出现空白页
【发布时间】:2015-02-06 01:30:50
【问题描述】:

我是 php 初学者,我正在尝试使用 XAMPP 连接数据库。 当我打开我的文件时,连接数据库没有任何错误,但也没有“连接成功”;文本,只有空白页。

这是我的代码:

<html>
<head>
  <title></title>
</head>
<body>


    <?php
    $servername = "localhost";
    $username = "root";
    $password = "lala2";

    // Create connection
    $conn = mysqli_connect($servername, $username, $password);

    // Check connection
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }
    echo "Connected successfully";
    mysqli_close($conn); 



    ?> 

    </body>
    </html>

【问题讨论】:

  • 可能是连接错误。因此,请查看服务器日志以查看 die 消息是什么。
  • 你能确定你已经安装了php5-mysql扩展吗?

标签: php database xampp


【解决方案1】:

你混合使用了 mysqli 和 mysql !以下是连接数据库时应使用的确切方法名称,并检查其连接状态:

MYSQLI 风格:

/* database connection information */
$server = ""; 
$user = ""; 
$password = "";
$database = "";

/* error messages */
$messErr_connectionDatabaseFailed = "Error : connection failed. Please try later.";

$link = new mysqli($server, $user, $password, $database);

/* If connection failed */
if (!$link) {
    printf($messErr_connectionDatabaseFailed);
    printf("<br />");
}
/* If connection successed */
else {
    /* everything is ok, go to next part of you algorithm */
}

MYSQL 风格(由于性能和安全问题已弃用):

/* database connection information */
$server = ""; 
$user = ""; 
$password = "";
$database = "";

/* error messages */
$messErr_connectionDatabaseFailed = "Error : connection failed. Please try later.";

$link = mysql_connect($server, $user, $password);

/* if connection failed */
if (!$link) {
    printf($messErr_connectionDatabaseFailed);
    printf("<br />");
}
else {
    /* selecting the database */
    mysql_select_db($database, $link);

    /* guessing your select db doesn't failed, next part of you algorithm here */
}

【讨论】:

    【解决方案2】:

    请改用 PDO 函数连接到数据库。如果您决定使用不同的数据库驱动程序,那么扩展您的应用程序会更容易。使用 PDO 时,“绑定参数”也容易得多。有关 PDO 的快速介绍,请阅读http://php.net/manual/en/intro.pdo.php

    至于为什么会出现空白页,可能有很多原因。您想先查看您的日志文件。在 Windows 上,检查事件日志。在 Linux 上,您的日志将位于 /var/log。在脚本开头添加以下行:

    ini_set('display_errors',1);
    error_reporting(E_ALL);
    

    还请查看 StackOverflow 中的此线程:PHP produces a completely white page, no errors, logs, or headers.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-22
      • 2019-02-03
      • 1970-01-01
      相关资源
      最近更新 更多