我有一个表格,它使用多个复选框字段来保存个人资料数据。
这些值正在提交到数据库,例如1, 2
礼貌的$_POST
变量,但我似乎无法弄清楚如何在个人资料页面上展开它们并显示这些值。
我的提交代码(插入查询的一部分);
$profile_piercings = implode(", ", $_POST['profile_piercings']);
我的个人资料代码用于回显值;
<?php if(!empty($profile['profile_piercings'])){ ?>
<dt>Piercings</dt>
<dd><?php //echo $profile['profile_piercings'] ?>
<?php
$piercing_values = $profile['PiercingsText'];
$piercings = explode(", ", $piercing_values);
echo $piercing_values; ?></dd>
<?php } ?>
打印爆炸数组时,看起来我的查询只传递了第一个值。我需要这样做以将数值转换为相应的文本值(例如1 =耳朵)。
我的SQL代码的摘录;
frmhaircolour.id,
frmhaircolour.textvalue AS HairColourText,
frmpiercings.id,
frmpiercings.textvalue AS PiercingsText,
FROM profiles
LEFT JOIN frmeyecolour ON profiles.profile_eyecolour = frmeyecolour.id
LEFT JOIN frmhaircolour ON profiles.profile_haircolour = frmhaircolour.id
LEFT JOIN frmpiercings ON profiles.profile_piercings = frmpiercings.id
答案 0 :(得分:0)
遍历你的阵列:
$piercings = explode(", ", $piercing_values);
foreach ($piercings as $piercing) {
echo $piercing."<br>";
}
答案 1 :(得分:0)
要使所有值都使用foreach
:
$piercings = explode(", ", $piercing_values);
foreach ($piercings as $piercing) {
echo $piercing."<br>";
}
获取具体值:
$piercings = explode(", ", $piercing_values);
echo $piercing[0]."<br>"; // or $piercing[1]; depending on what you want.