php - PHP 脚本不适用于 Plesk
问题描述
这是我第一次使用 Plesk。在使用 Plesk 之前,这个网站和脚本都是功能齐全的,所有 PHP 都可以正常运行,尽管一旦使用 Plesk 将其移动到不同的主机,大多数 PHP 现在都显示为纯文本。一些包含工作,但很多简短的 MySQLi 命令不起作用,例如;
$conn->query
$result2->fetch_row()
$result->num_rows
另外,当我尝试执行一个非常简单的测试时,例如;
$test = 'hello';
echo $test;
我什么都没有回来?这是我正在使用的脚本之一的示例以及它在网站上的显示方式...
<?
if($show == 'All'){
$sql = mysqli_query($conn, "SELECT * FROM `xWKaiNXU_news` WHERE `news_public` = '1' ORDER BY `news_date` DESC LIMIT 100");
} else {
if($show == 'EVENT'){
$sql = mysqli_query($conn, "SELECT * FROM `xWKaiNXU_news` WHERE (`news_type` = 'EVENT' OR `news_type` = 'PDF') AND `news_public` = '1' ORDER BY `news_date` DESC LIMIT 100");
} else {
$sql = mysqli_query($conn, "SELECT * FROM `xWKaiNXU_news` WHERE `news_type` = '$show' AND `news_public` = '1' ORDER BY `news_date` DESC LIMIT 100");
}
}
$result = $sql;
echo $test;
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
$news_id = $row['news_id'];
$news_type = $row['news_type'];
$news_title = $row['news_title'];
$news_tagline = $row['news_tagline'];
$news_date = date('dS F Y', strtotime($row['news_date']));
$news_time = date('H:i', strtotime($row['news_date']));
$news_image = $row['news_image'];
if($news_type == 'PDF'){
$news_text = $row['news_text'];
?>
<div class="col-md-12">
<article class="post">
<div class="row" align="center">
<?
if($news_tagline == 'port'){
?>
<hr>
<p>From: <h4><? echo $news_date; ?></h4></p>
<p><? echo $news_text; ?></p>
<object data="<? echo $news_image; ?>" type="application/pdf" width="80%" height="600px">
<p>Alternative link - <a href="<? echo $news_image; ?>">PDF Viewer</a></p>
</object>
<?
} else {
?>
<hr>
<p>From: <h4><? echo $news_date; ?></h4></p>
<p><? echo $news_text; ?></p>
<object data="<? echo $news_image; ?>" type="application/pdf" width="100%" height="550px">
<p>Alternative link - <a href="<? echo $news_image; ?>">PDF Viewer</a></p>
</object>
<?
}
?>
</div>
</article>
</div>
<?
} else {
if($news_image == ''){
$news_dp_image = 'assets/images/default.jpg';
} else {
$news_dp_image = 'news_images/'.$news_image;
}
?>
<!-- ======================= ARTICLE #4 ======================-->
<div class="col-md-12">
<article class="post">
<div class="row">
<div class="col-md-3 col-sm-3 col-xs-2">
<figure class="stretchy-wrapper ratio_1-1"><a href="full_news.php?id=<? echo $news_id; ?>" title="Post" style="background-image: url('<? echo $news_dp_image; ?>'); box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4), 0 1px 5px rgba(130, 130, 130, 0.35);"></a></figure>
</div>
<div class="col-md-9 col-sm-9 col-xs-12">
<h3 class="post_title"><a href="full_news.php?id=<? echo $news_id; ?>"><i class="fa fa-chevron-circle-right" aria-hidden="true"></i> <b><? echo $news_title; ?></b></a></h3>
<p><? echo $news_tagline; ?></p>
<div class="post_figure_and_info">
<div class="post_sub"><span class="post_info post_date"><i class="fa fa-calendar"></i> <? echo $news_date; ?> </span><a href="#"><span class="post_info post_author">at <i class="fa fa-clock-o" aria-hidden="true"></i> <b><? echo $news_time; ?></b></span></a><a href="#"><span class="post_info post_categories"><i class="fa fa-calendar-o" aria-hidden="true"></i> <b><? echo $news_type; ?></b></span></a></div>
</div>
<p><a href="full_news.php?id=<? echo $news_id; ?>" class="btn btn-primary"><i class="fa fa-info-circle" aria-hidden="true"></i> Read More</a></p>
</div>
</div>
</article>
</div>
<?
}
}
} else {
?>
<hr>
<?
}
?>
它是如何显示的:
0) { while($row = mysqli_fetch_assoc($result)) { $news_id = $row['news_id']; $news_type = $row['news_type']; $news_title = $row['news_title']; $news_tagline = $row['news_tagline']; $news_date = date('dS F Y', strtotime($row['news_date'])); $news_time = date('H:i', strtotime($row['news_date'])); $news_image = $row['news_image']; if($news_type == 'PDF'){ $news_text = $row['news_text']; ?> 来自:
从:
关于为什么会发生这种情况的任何想法?我尝试过不同的 PHP 版本等,但我没有很多选择......
Performance settings
memory_limit
128M (Default)
max_execution_time
30 (Default)
max_input_time
60 (Default)
post_max_size
8M (Default)
upload_max_filesize
2M (Default)
opcache.enable
on (Default)
Common settings
include_path
.:/usr/share/php (Default)
session.save_path
/var/lib/php/sessions (Default)
mail.force_extra_parameters
open_basedir
{WEBSPACEROOT}{/}{:}{TMP}{/}
error_reporting
E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
display_errors
off (Default)
log_errors
on (Default)
allow_url_fopen
on (Default)
file_uploads
on (Default)
short_open_tag
off (Default)
解决方案
正如我在评论中所建议的那样,问题是短开放标签 ( <?
) 被禁用/未解释。更改它们以<?php
解决问题。
推荐阅读
- dataframe - pySpark dict(键,值,值)
- linux - 如何更改 asm x64 中的 errno 值
- typescript - 如何以有效的方式替换对象值?
- php - 如何连接 AS400 和 Laravel
- c# - C# checkboxlist:如何避免通过单击标签来更改复选框状态?
- android - 如何在基于 Kotlin 的壁纸应用中将位图图像设置为锁屏壁纸?
- javascript - prisma2:如何获取嵌套字段?
- azure - 创建将内容上传到 Web 服务的 Microsoft Teams 上传机器人的最佳方法是什么?
- go - 如何使用 GoLang 使用 Google PubSub opencensus 指标?
- java - 使用实体图从主表和子表中获取数据的 JPA 标准查询