2010-10-01 71 views
0

我有此脚本来检查计算机上是否存在cookie,然后使用该cookie中的信息将某人带到我网站上的正确页面。这里是代码将PHP和Cookie设置为变量时遇到问题

<?php 
if (isset($_COOKIE["name"])) 
    $name = $_COOKIE["name"]; 
    header("location: names/$name/$name.php"); 
else 
    echo "You have no name"; 
?> 

当这个脚本运行时,它什么都不做。甚至没有回应“你没有名字”。任何想法为什么这段代码不起作用?

+1

如果block语句扩展过去一行,则需要大括号 – Corey 2010-10-01 01:23:56

+0

没有假设,在您的代码之前的任何时刻,您是否曾经调用'setcookie'和/或为cookie分配一个值来存储?你的cookies过期了吗?您是否更改了cookie设置或将它们保留为默认值? – 2010-10-01 01:25:35

回答

2

您缺少括号。也许你习惯了python?

<?php 
if (isset($_COOKIE["name"])){ 
    $name = $_COOKIE["name"]; 
    header("location: names/$name/$name.php"); 
}else{ 
    echo "You have no name"; 
} 
?> 

else的语法错误可能导致脚本失败,并且您可能会关闭错误报告。打开它。