PHP表单数组值与空格

时间:2015-11-25 19:38:23

标签: php arrays forms

我在为表单上的值字段传递关联数组位置的值时遇到问题。

$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="">

2 个答案:

答案 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'];?>">