我使用数组在while循环中构建get语句。这是我用来构建数组的代码
//为批量更新创建数组
$i++;
$where=array();
$where[] =$cards['id'].'&';
$query.= ' id_'.$i.'='.implode($where);
当我回显$ query时,(这是构造的get语句)我得到了我想要的结果 ID_1 = 1&安培; ID_2 = 2及id_3 = 3等...
但是,当我尝试在回显链接中使用$ query变量时,例如:
echo "<a href=mass_qty_update.php?".rtrim($query,'&')."><button>"."Update All Quantities"."</button></a>";
$ query变量返回空白。所以在我的链接的这个场景中,我目前正在获得:
mass_qty_update.php?
当我应该得到:
mass_qty_update.php?id_1=1& id_2=2& id_3=3
我无法弄清楚我在这里失踪了什么。任何帮助一如既往地受到高度赞赏。
杰克
答案 0 :(得分:0)
您是否在循环中定义查询?如果是这样,一旦退出循环,它将被取消设置。为了解决这个问题,在循环设置之前将其定义为null,它应该可以工作。
$query = "";
loop{
...
}
echo "<a href=mass_qty_update.php?".rtrim($query,'&')."><button>"."Update All Quantities"."</button></a>";
答案 1 :(得分:0)
这是你在找什么:
$i=0;
$link = 'mass_qty_update.php?';
$chunks = array();
while($i<5){
$i++;
$chunks[] = 'id_'.$i.'='.$i;
}
$link .= implode('&', $chunks);
echo $link;
// Output: mass_qty_update.php?id_1=1&id_2=2&id_3=3&id_4=4&id_5=5
看看如何使用implode以及如何创建数组。