我在为表单上的值字段传递关联数组位置的值时遇到问题。
$sql = mysqli_query(
$conn,
"SELECT veiculos_codvei,
revisao.ordemServico,
descricao,
qtd,
precoUnt,
precoTotal
FROM revisao
INNER JOIN itensRevisao ON revisao.ordemServico = itensRevisao.ordemServico
WHERE codRevisao='{$codRevisao}'
");
$array = array();
// retorna consulta sql num array associativo
while ($row = mysqli_fetch_assoc($sql)) {
$array[] = $row;
}
print_r($array[0]['descricao'])
}
返回“Óleo15W40” 然后我把它传递给像这样的输入表格
<input type="text" class="form-control" name="descricao[]" id="descricao" placeholder="Pastilha do Freio" <?php if (isset($array[0]['descricao']) and ! empty($array[0]['descricao'])) echo "value=".$array[0]['descricao']."";?>>
但是输入的值只是“Óleo”,从谷歌Chrome控制台我可以看到它正确的值,但似乎是一个连接问题。
<input type="text" class="form-control" name="descricao[]" id="descricao" placeholder="Pastilha do Freio" value="Óleo" 15w40="">
答案 0 :(得分:1)
value
属性周围没有引号(即value=Óleo 15W40
代替value="Óleo 15W40"
),您看到的引号是由浏览器自动添加以修复破解XML ,请使用以下内容:
<input
type="text"
class="form-control"
name="descricao[]"
id="descricao"
placeholder="Pastilha do Freio"
<?php if (isset($array[0]['descricao']) and !empty($array[0]['descricao'])) echo "value=\"".$array[0]['descricao']."\"";?>
>
答案 1 :(得分:1)
我想通了,我从项目的另一部分复制了这个输入,我相信有理由将值标记放在IF中,尽管这可能是错误的。 将值放在IF之外可以解决问题。
<input type="text" class="form-control" name="descricao[]" id="descricao" placeholder="Pastilha do Freio" value="<?php if (isset($array[0]['descricao']) and ! empty($array[0]['descricao'])) echo $array[0]['descricao'];?>">