【发布时间】:2011-03-06 10:43:18
【问题描述】:
我有一个带有 switch case 的 PHP 文件,可以根据变量 $view 包含不同的文件。
当我在本地机器上的 WAMP 服务器上运行它时,它运行良好。
但现在我已经上传到一个网络服务器,include 函数刚刚停止工作。没有任何内容。
switch($view)
{
case 'AddToCart':
echo 'adding to cart';
if($_POST['qty']>0)
{
if(!isset($_SESSION['cart'][$_POST['id']]))
{
$_SESSION['cart'][$_POST['id']]=$_POST['qty'];
}
else
{
$_SESSION['cart'][$_POST['id']]+= $_POST['qty'];
}
}
header('Location:index.php');
break;
case 'UpdateCart':
echo 'updating cart...';
if(isset($_SESSION['cart'][$_POST['id']]))
{
if($_POST['updateqty']>0)
$_SESSION['cart'][$_POST['id']]=$_POST['updateqty'];
else
unset($_SESSION['cart'][$_POST['id']]);
}
header('Location:index.php?view=ViewCart');
break;
case 'ViewCart':
echo 'This is the full feature cart.';
include('models\cart.php');
include('models\fullcart.php');
break;
case 'Checkout':
echo 'reached checkout';
include('models\finalcart.php');
break;
case 'ClearCart':
echo 'Clear cart reached';
$_SESSION['cart']=array();
$_SESSION['total_items']=0;
$_SESSION['total_price']=0;
header('Location:index.php');
break;
case 'RemoveItem':
echo 'Removing item '.$_POST['id'].'<br><br>';
unset($_SESSION['cart'][$_POST['id']]);
header('Location:index.php?view=ViewCart');
break;
default:
echo 'index page...lalalalalal...<br>';
include('models\cart.php');
include('models\catalog.php');
}
我在网络服务器上执行了phpinfo,发现它运行的是 PHP 版本 5.2.17。
怎么了?
【问题讨论】:
-
文件是否在正确的路径中?他们有正确的权限吗?您是否收到任何错误/警告消息?
-
在我看来,这可能是目录分隔符问题,因为 Window 使用 \ 和 Unix /。但是,您是否开启了错误报告功能?