我正在使用数据库中的数据设置一些文本框的值,如图所示。
$qry="select * from branch where id=4";
$res=$con->query($qry);
$r=$res->fetch_assoc();
实际上我正在使用echo语句中的文本框打印表格,如下所示:
echo '
<td>Incharge:</td><td><input type="text" name="incharge" size="38" value='.'$r["incharge"])'.'></td>';
但问题是它只打印文本框中的第一个字符串。例如,获取的$ r [“incharge”]的值为Ankur Lakhani
,但它只打印Ankur
。
任何解决方案
答案 0 :(得分:3)
您的输出HTML如下所示:
<input type="text" name="incharge" value=Ankur Lakhani>
正如您可以通过突出显示来判断的那样,
它被解释为:
<input type="text" name="incharge" value="Ankur" Lakhani="Lakhani">
添加引号以确保使用整个值:
<input type="text" name="incharge" value="Ankur Lakhani">
您还应该添加转义,因为您的字符串包含HTML敏感字符,例如"
和>
<input type="text" name="incharge" value="<?php echo htmlspecialchars($r["incharge"]); ?>"/>
答案 1 :(得分:1)
当您输出数据作为文本输入的值时,您应该将其转义, 使用htmlentites函数:
<input type="text" name="incharge" value="<?php echo htmlentities($r["incharge"]); ?>"/>
答案 2 :(得分:0)
您忘记为您的值设置“”。
试试这个:
<?php
$qry="select * from branch where id=4";
$res=$con->query($qry);
$r=$res->fetch_assoc();
?>
<input type="text" name="incharge" value="<?php echo $r['incharge'];?>">
答案 3 :(得分:0)
如果问题出在您的客户端,那么这就是
'$r["incharge"])'
将其更改为
"$r['incharge'])"
答案 4 :(得分:0)
试,
value = "<?php echo $r['incharge']; ?>"
答案 5 :(得分:0)
试试这个
<input type="text" name="incharge" value="<?= $r['incharge'];?>">
或使用类似<?= htmlspecialchars($r['incharge'])?>
必须在配置文件中启用Short_open_tag