我在mysql数据库中有一些数据,应将其插入表单中,以便用户可以对其进行编辑并再次提交。但是在插入过程中,我面临以下问题。
我有一个表列名为“ description”,由一行中的几个单词组成。但是,当我选择它并用php回显时,仅显示第一个单词。
这是我的代码:
modify.html
<html>
<body>
<form action="modify.php" method="post">
<input type="text" name="acronym" id="acronym" value="">
<input type="submit" value="Search for acronym">
</form>
</body>
</html>
modify.php
<?php
$acronym = mysqli_real_escape_string($conn, $_POST['acronym']);
$sql_search="SELECT * FROM `acronym_table` WHERE `acronym` LIKE '$acronym'";
$result = $conn->query($sql_search);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<form action=\"save_modified.php\" method=\"post\">
<table>
<tr>
<td>ID</td>
<td><input type=\"text\" value=". $row["id"]. " id=\"id\"></td>
</tr>
<tr>
<td>Acronym</td>
<td><input type=\"text\" value=". $row["acronym"] ." id=\"acronym\"></td>
</tr>
<tr>
<td>Description</td>
<td><input type=\"text\" value=". $row["definition"]." id=\"definition\" style=\"width: 200px; padding: 2px; border: 1px solid black\"></td>
</tr>
<tr>
<td><input type=\"submit\" value=\"Modify\"></td>
</tr>
</table>
</form>";
}
} else{
echo "0 results";
}
?>
在表格行
<tr>
<td>Description</td>
<td><input type=\"text\" value=". $row["definition"]." id=\"definition\" style=\"width: 200px; padding: 2px; border: 1px solid black\"></td>
</tr>
在“定义”文本区域中,我应该显示从数据库中选择的多个单词。
请帮忙。
最佳答案
您在添加id,首字母缩写词,定义时忘记了双引号,因此浏览器会忽略空格后的所有内容。
这就是为什么您可以看到第一个单词的原因,其他所有内容都将被浏览器删除,因为它对它而言是无效的html。
尝试这个:
<tr>
<td>ID</td>
<td><input type=\"text\" value=\"". $row["id"]. "\" id=\"id\"></td>
</tr>
<tr>
<td>Acronym</td>
<td><input type=\"text\" value=\"". htmlspecialchars($row["acronym"]) ."\" id=\"acronym\"></td>
</tr>
<tr>
<td>Description</td>
<td><input type=\"text\" value=\"". htmlspecialchars($row["definition"])."\" id=\"definition\" style=\"width: 200px; padding: 2px; border: 1px solid black\"></td>
</tr>
<tr>
<td><input type=\"submit\" value=\"Modify\"></td>
</tr>
关于php - 试图显示由单个文本字段中的多个单词组成的mysql数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32223545/