我的代码不起作用。它只是打印出默认的
这是php
$updatesQuery = "SELECT * FROM updates WHERE Isnote = 0";
$rs = mysql_query($updatesQuery) or
die("SQL: $usersQuery)<br />".mysql_error());
while($row = mysql_fetch_array($rs)) {
switch ($i){
case $row[CatID]=1:
$i = "kunder";
break;
case $row[CatID]=2:
$i = "bokningar";
break;
case $row[CatID]=3:
$i = "offerter";
break;
case $row[CatID]=4:
$i = "leverantorer";
break;
case $row[CatID]=5:
$i = "kalender";
break;
default:
$i = "no work";
break;
}
echo $i;
}
sql查询有效。但我的输出只是默认值。"没有工作"。
我写错了什么?
打开变量,在本例中为$row['CatID']
:
switch ($row['CatID']){
case 1:
$i = "kunder";
break;
case 2:
$i = "bokningar";
break;
...
看起来$i
从未设置过,所以switch()
语句默认为(令人惊讶的)default子句。
将代码更改为类似的内容;
switch ($row['CatID']){
case 1:
$yourVar = "kunder";
break;
}
switch语句查看当前变量。如果该变量恰好是数据库中的一列,则需要评估该特定变量。
如果您在切换之前将$row['catID']
中的数据分配给变量$i
,那么您的代码就会起作用。
只是猜测
switch ($row['CatID']) {
case 1:
$i = "kunder";
break;
// And so on
}
- 从未定义
$i
$row[CatID]
应该触发通知,因为您忘记了'
$row[CatID]=2
设置值,这在上下文中没有多大意义
switch($row['CatID'])
然后使用案例1:、案例2:etc