Php 显示while循环结果的最佳方法

Php 显示while循环结果的最佳方法,php,arrays,forms,Php,Arrays,Forms,编辑** 好的,让我们看看我是否能说清楚:)很抱歉没有正确解释 我有下面的while循环,希望有人能告诉我显示结果的最佳方式,我需要它显示颜色名称(编辑和大小作为数组键,稍后我将分解以分离颜色和大小*),然后显示输入值。结果将通过post发送到下一页 <?php $colour_result = mysqli_query($con,"SELECT colour_variation.*, colours.* FROM colour_variation INNER JOIN colo

编辑** 好的,让我们看看我是否能说清楚:)很抱歉没有正确解释

我有下面的while循环,希望有人能告诉我显示结果的最佳方式,我需要它显示颜色名称(编辑和大小作为数组键,稍后我将分解以分离颜色和大小*),然后显示输入值。结果将通过post发送到下一页

    <?php

$colour_result = mysqli_query($con,"SELECT colour_variation.*, colours.* FROM colour_variation INNER JOIN colours ON colour_variation.colour_id=colours.colour_id WHERE product_code='$recordID'");
while($colour_row = mysqli_fetch_array($colour_result))
  {
 ?> 
<tr><td valign="middle"><img src="resources/images/colours/<?php echo $colour_row['colour_image']; ?>" width="35" height="35"></td><td width="100"><?php echo $colour_row['colour_name']; ?>
<center><?php if($colour_row['colour_name'] !== '') { echo('<input type="hidden" size="20" name="' . $colour_row['colour_name'] . '" placeholder="Qty">');
     } else { echo(''); } ?> </center></td>

    <td><center><?php if($colour_row['s'] !== '') { echo('<input type="text" size="2" name="s[]" placeholder="Qty">');
     } else { echo(''); } ?> </center></td>

    </tr>
    <?php } ?>
</table>


<?php } ?>
但这并没有给我颜色名称,只是给了我数组中的位置

在第二页上,我希望数组显示所有非空值,如下所示: 颜色名称:S:输入值

*或者:我将颜色名称作为隐藏字段,如果我可以显示颜色名称,则s:值;m:价值;l:价值;等等。漏掉空值。然后下一行显示下一个颜色名称,后跟尺寸等

希望我解释得更好一点

非常感谢这里

$arr_s = array(
 "red" => "#f00",
 "blue" => "#00f",
);

foreach ($arr_s as $key => $value) {
    echo "<tr><td>$key</td><td>$value</td></tr>\n";
}
$arr\u s=array(
“红色”=>“#f00”,
“蓝色”=>“#00f”,
);
foreach($arr_s as$key=>$value){
回显“$key$value\n”;
}
产生

<tr><td>red</td><td>#f00</td></tr>
<tr><td>blue</td><td>#00f</td></tr>
red#f00
蓝色#00f

您能显示变量转储($colour\u row)的输出吗??

尝试使用!=而不是==谢谢,我已经能够显示数组的输出了,但是主要的问题是,如发布的代码所示,每个表单名称都是由mysql name=“s_.”$colour_row['color_name']”中的记录组成的。我可以在一个长长的列表中显示所有内容。但我希望能够使用颜色名称,然后列出每个表单元素的大小和值:echo(“”);有大小的数组,我现在可以在下一页上显示,使用数组过滤器成功地去除空值,但是作为每个值的键,我需要显示$colour_行['colour_name'],而不是仅显示0、1、2等。$arr_xs=$\u POST['xs']$arr_s=$_POST['s']$arr_m=$_POST['m']$arr_l=$_POST['l']$arr_xl=$_POST['xl']$arr_xxl=$_POST['xxl'];回声“超小:”;打印(数组过滤器($arr_xs));回声“
”;回声“小:”;打印(数组过滤器($arr_s));回声“
”;回声“中等:”;打印(数组过滤器($arr_m));回声“
”;回声“大:”;打印(数组过滤器($arr_l));回声“
”;回声“超大:”;打印(数组过滤器($arr_xl));回声“
”;回声“超大:”;打印(数组过滤器($arr_xxl));对不起,我还不清楚。。。您应该在从$\u POST读取输入变量后立即打印(例如,使用“print\r($arr\u s)”)该变量的值;然后打印用于从中提取值的代码;然后打印该代码的输出;然后说你应该期待什么。一般来说,请避免使用太多不相关的代码:不要显示$arr_xs、$arr_s、$arr_m、。。。但只有一个实例…:-)
$arr_s = array(
 "red" => "#f00",
 "blue" => "#00f",
);

foreach ($arr_s as $key => $value) {
    echo "<tr><td>$key</td><td>$value</td></tr>\n";
}
<tr><td>red</td><td>#f00</td></tr>
<tr><td>blue</td><td>#00f</td></tr>