为什么当我在 Ubuntu 16.04 中启动 PHP 测试脚本时浏览器显示一个空白屏幕?

为什么当我在 Ubuntu 16.04 中启动 PHP 测试脚本时浏览器显示一个空白屏幕?

我将测试服务器上的 Ubuntu 14 更新为 Ubuntu 16.04,以与我的 ISP 的服务器兼容。

我的配置如 phpMyAdmin 中所示,运行良好!:

  • 服务器:通过 UNIX 套接字的本地主机
  • 服务器类型:MySQL
  • 服务器版本:5.7.17-0ubuntu0.16.04.1-(Ubuntu)
  • 协议版本:10
  • 用户:根@本地主机
  • 服务器字符集: UTF-8 统一码 (utf8)
  • 阿帕奇/2.4.18 (Ubuntu)
  • 数据库客户端版本:libmysql-mysqlnd 5.0.12-dev - 20150407
  • PHP 扩展n:mysqli 文档
  • PHP 版本:7.0.13-0ubuntu0.16.04.1

下面的测试脚本在网络浏览器中创建一个空白屏幕:

<?php
$link = mysqli_connect("localhost", "root", "cydb4tsa", "RedGround");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}else{ echo "connected"; }
mysqli_close($link);
?>

我没有找到相关的错误消息/var/log/mysql/error.log

mysql 在命令行上运行,包括来自导入表的所有查询:

sebu@sebu-Inspiron-3437:~$ mysql -u root -p<pw> RedGround

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

apache2 运行,浏览器显示默认页面和

ls /etc/apache2/mods-enabled/ | grep php
php7.0.conf
php7.0.load

php7 运行,浏览器显示所有信息

phpMyAdmin 运行正常尽管显示错误: 按照您的配置定义的控制用户连接失败

当我运行上述 php 脚本时,屏幕仍然为空白。可能是 mysql 和 php 之间出现通信错误?

sebu@sebu-Inspiron-3437:~$ php -m

[PHP Modules]
calendar Core ctype date dom exif fileinfo filter ftp gd gettext hash
iconv json libxml mbstring mcrypt mysqli mysqlnd openssl pcntl pcre PDO
pdo_mysql Phar posix readline Reflection session shmop SimpleXML sockets SPL 
standard sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader xmlwriter xsl
Zend OPcache zlib

[Zend Modules]
Zend OPcache

在我的膝盖上更新后的项目屏幕,本地主机: 在此处输入图片描述 我的项目在 ISP 服务器上的在线屏幕: 在此处输入图片描述

答案1

已解决浏览器可以显示以下样式的输出:

<?  // should be <?php, but it works anyway because 
    $server     = $_SESSION['database_host'];
    $datenbank  = $_SESSION['database_name'];
    $username   = $_SESSION['database_user'];
    $passwort   = $_SESSION['database_user_pw'];
    $mySQL  =  new mysqli($server,$username,$passwort,$datenbank);
    if ($mySQL->connect_errno) 
    {
        echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
    }
    else
    {
    $sql = "SELECT count(fldID) count from tblPerson";
    // echo"$sql<br>";
    if (!$result = $mySQL->query($sql)) 
    {
        echo "query \"$sql\" failed because $mySQL->error";
        exit;
    }

    if (! $result->num_rows) exit;

    $actor = $result->fetch_assoc();
    $nbr =  $actor['count'];
    echo "nuber is: ".$nbr." persons";

    }
?> 

相关内容