php 或浏览器无法识别 PDO 中的“->”
Posted
技术标签:
【中文标题】php 或浏览器无法识别 PDO 中的“->”【英文标题】:php or browser unable to recognize "->" in PDO 【发布时间】:2012-09-30 18:02:55 【问题描述】:我有这个来自互联网的代码:
<?php
session_start();
require("authen/inc/mysql.php");
require("authen/inc/Membership.class.php");
$Member = new Membership($DBH);
require("authen/inc/membership.php");
//test user permissions
if(!$Member -> test_perms(2))
//No perms, echo error or forward or something
die("You do not have permissions to view this page!<br>");
include("authen/inc/menu.php");
?>
它在我的一台网络服务器上完美运行。所以我使用 scp 将所有内容复制到另一个网络服务器,但现在我收到了这个奇怪的错误:
test_perms(2)) //没有权限,回显错误或者转发什么的死("你没有权限查看这个页面!
"); 包括("authen/inc/menu.php"); ?>
在我看来,这个网络服务器或浏览器没有正确解释“->”,因为它认为它是 html 的一部分而不是 PDO 符号。
我该如何解决这个问题?
谢谢
【问题讨论】:
检查两个网络服务器上使用的 php 版本,以及它是否正确安装在第二个网络服务器上。 所以问题可能出在您的服务器上,而不是代码上! 另外,浏览器不解释 PHP。 :) 【参考方案1】:这不是错误,而是您的 PHP 代码被发送到浏览器,而不是在服务器上执行。简单地说,服务器没有正确安装和配置 PHP。您只看到部分代码的原因是 ->
被浏览器解释为关闭 HTML 标记。如果您查看原始源代码,您将看到整个 PHP 代码。
【讨论】:
感谢您的回答。我找到了该错误的原因。原因是我没有在我的 Apache2 配置上启用 .htaccess。我有 .htaccess 文件,但未在 Apache 上启用。奇怪的是,不工作的文件扩展名为 .html,即使没有启用 .htaccess,带 .php 的文件也可以工作。在我的 .htaccess 我有这个: AddType application/x-httpd-php .html .htm以上是关于php 或浏览器无法识别 PDO 中的“->”的主要内容,如果未能解决你的问题,请参考以下文章
PHP/PDO 错误:SQLSTATE[HY000] 无法连接:Adaptive Server 不可用或不存在(严重性 9)