【发布时间】:2012-03-08 11:37:54
【问题描述】:
我正在从我的 perl 脚本访问数据库,并尝试放入 if 语句,以便能够根据用户选择的内容查询不同的内容。
没有 if 语句它可以完美运行,但是当我添加 if 语句时,它给了我 500 错误。
所以这个可行:
my $query = "SELECT * FROM cars";
而这个没有:
if( $model eq "All" ){
my $query = "SELECT * FROM cars";
}
【问题讨论】:
-
在 if 语句前回显 $model 的值。
-
echo 没有显示任何东西,在到达那条线之前就坏了。我很确定这一切都是因为如果我使用 chrome 并检查元素并查看为模型发送的标题“全部”。也刚刚发现这个错误:全局符号“$query”需要显式包名在
-
好的,所以我通过反复试验回答了我自己的问题。我将 if 之后的 else 语句移到了之前。并把其他人拿走了。所以无论如何查询都会被设置为某种东西,我不得不从 if 语句中的 $query 中删除我的信息。现在一切都很好!显然我不知道在这个网站上回答我自己的问题......它不会让我大声笑
-
用
my声明的变量具有最近封闭块的范围。在您的情况下,这意味着$query未在您的 if 语句之外声明。