发布按钮在本地服务器上有效,但在我的实时 Web 服务器上无效

时间:2021-02-06 23:49:34

标签: php html

screenshot of page

这个发布按钮在我的 Xampp 本地服务器上运行良好,但是当我在我的实时网络服务器上使用它时它没有任何作用。

来自页面的代码:

num_pressed

以及我的functions.php文件中的函数

<?php if ($_SESSION['user']['role'] == "Admin" ): ?>
<td>
<?php if ($post['published'] == true): ?>
    <a class="btn unpublish"
        href="<?php echo BASE_URL .'/admin/posts.php' ?>?unpublish=<?php echo $post['id'] ?>">
        <i class="fas fa-check"></i>
    </a>
<?php else: ?>
    <a class="btn published"
        href="<?php echo BASE_URL .'/admin/posts.php' ?>?published=<?php echo $post['id'] ?>">
        <i class="fas fa-times"></i>
    </a>
<?php endif ?>
</td>

}

我真的希望这个按钮改变我的数据库表中“已发布”的值。 0 未发布,1 已发布

错误日志报告了这个

[07-Feb-2021 09:33:35 Europe/Berlin] PHP 严格标准:strtotime():我们在 /homepages/46/d856728078 中为“CET/1.0/no DST”选择了“Europe/Berlin” /htdocs/index.php 第 140 行 [2021 年 2 月 7 日 09:33:35 欧洲/柏林] PHP 严格标准:date():我们在 /homepages/46/d856728078/htdocs/ 中为“CET/1.0/无夏令时”选择了“欧洲/柏林” index.php 第 140 行

但没有一个页面是关于我正在质疑的页面。

我更改了默认时区,不再收到该错误,但没有解决问题。

1 个答案:

答案 0 :(得分:0)

所以,我在 stackoverflow 的另一个页面上找到了我的问题的答案。 Answer for publish/unpublish not functioning

问题是functions.php文件中的这行代码

$sql = "UPDATE posts SET published=!published WHERE id=$post_id";

显然,这一行是错误的,应该改用这一行。

$sql = "UPDATE posts SET published = not published WHERE id=$post_id";

我希望这可以帮助其他有类似问题的人。