将while循环的结果发送到标头

时间:2015-01-23 09:37:57

标签: php

我试图将我的while循环重新发送到标题但我无法找到让它运行的方法。

回声会给我一个这样的结果: C7&安培; A8&安培;

但标题会给我这个:http://localhost/webapp/admin.php?success=C7

$result = mysqli_query($DB, "SELECT * FROM booking WHERE itemID IN('$itemID1','$itemID2','$itemID3','$itemID4','$itemID5','$itemID6','$itemID7','$itemID8','$itemID9','$itemID10')");
while($row = mysqli_fetch_array($result)){
    $hylla= $row['Hyllplacering']. "&";
    echo $hylla;

}
header('location: /webapp/admin.php?success=' .$hylla);

2 个答案:

答案 0 :(得分:2)

这应该有效。使用此方法可以删除查询字符串末尾的额外&

顺便说一下,确保在echo设置之前你没有header任何事情,因为一旦需要在屏幕上打印某些内容,标题就已经发送了。

$result = mysqli_query($DB, "SELECT * FROM booking WHERE itemID IN('$itemID1','$itemID2','$itemID3','$itemID4','$itemID5','$itemID6','$itemID7','$itemID8','$itemID9','$itemID10')");

$hyllaArray = array();

while($row = mysqli_fetch_array($result)){
    $hyllaArray[] = $row['Hyllplacering'];
}
header('location: /webapp/admin.php?success=' . implode('&', $hyllaArray));

答案 1 :(得分:0)

尝试将重定向放在while循环中,一旦从内部重定向,而没有机制将$ hylla的其余部分转换为新的URL。

$result = mysqli_query($DB, "SELECT * FROM booking WHERE itemID IN('$itemID1','$itemID2','$itemID3','$itemID4','$itemID5','$itemID6','$itemID7','$itemID8','$itemID9','$itemID10')");
$hylla="";
while($row = mysqli_fetch_array($result)){
    $hylla= $hylla.$row['Hyllplacering']. "&";
}
    echo $hylla;
    header('location: /webapp/admin.php?success=' .$hylla);