来自数据库(phpmyadmin)的文本值在php代码中的空格后被切断

时间:2018-01-19 14:28:55

标签: php sql phpmyadmin

代码:     

$query  = mysqli_query($conn, "SELECT * FROM tabel");
$i = 1;

while ($record = mysqli_fetch_assoc($query))
{
echo "<form action=... method=post>";
echo "<table>";
echo "<tr>";
echo "<th>Project - " . $i . " </th>";
echo "</tr>";
echo "<tr>";
echo "<td><b>Address: </b>" . "<input type=label name=address value=" . $record['street'] . "-" . $record['number'] ." </td>";
echo "</tr>";
echo "</table>";
echo "</form>";
$i++;
echo "</br>";
}
?>

就像标题所说的那样,我在数据库中填充的价值会在空格后被切断。例如,如果我的街道名称中包含空格或多个空格,则不会显示完整值。

数据库中的示例值:&#39; Sinte Apoloniastraat&#39;

只会显示&#39; Sinte&#39;在标签

可能需要对此部分进行更改:

<input type=label name=address value=" . $record['street'] . 

1 个答案:

答案 0 :(得分:2)

你正在制作破碎的HTML。基本上你输出这个:

<td><b>Address: </b><input type=label name=address value=Sinte Apoloniastraat</td>

这意味着:

  1. 您根本没有关闭<input>元素。
  2. 您没有在引号中包含属性值,因此您的属性为value=Sinte单独的属性为Apoloniastraat
  3. 请注意您制作的HTML。如果它无效,浏览器将尝试为您纠正它。浏览器更关心的是使它有效,而不是你希望它显示的任何输出。用引号括住属性并关闭标记:

    echo '<td><b>Address: </b><input type="label" name="address" value="' . $record['street'] . '-' . $record['number'] . '"></td>';