3 回答
TA贡献1828条经验 获得超6个赞
我从来没有真正关心过我的源代码有多漂亮。如果您想完全控制源代码间距,那么一种方法是打印 php 标记内的每个选项并手动添加换行符 ( \n
) 字符。\t
如果您愿意,您甚至可以在每个选项标签之前添加一个制表符 ( )。
如果您的值实际上确实有多余的前导和尾随空格,那么只需使用trim()
,但我并不完全相信情况确实如此。
不要将过程语法与面向对象的 mysqli 语法混合在一起。我建议您继续使用面向对象,它更简洁且更易于使用。
mysqli 结果是一个可迭代对象——您不需要不断调用 fetch 函数。
仅从数据库中准确选择您想要使用的内容。
代码:(演示)
<select id="selectedCountry">
<?php
if ($result = $conn->query("SELECT country_code, country_name FROM countries")) {
foreach ($result as $row) {
printf(
"\t<option value=\"%s\">%s</option>\n",
trim(htmlentities($row['country_code'])),
trim(htmlentities($row['country_name']))
);
}
}
?>
</select>
TA贡献1797条经验 获得超4个赞
那么你可以使用 php 本机函数删除那些不需要的空格preg_replace('/\s+/', '', $row2['country_name']);
这是完整的代码 $row2['country_name']
<select id="selectedCountry">
<?php
/*FETCH COUNTRY*/
$sql2 = "SELECT * FROM countries";
if($result2 = $conn -> query($sql2)) {
while($row2 = mysqli_fetch_assoc($result2)) {
//Clear the data from html and remove unwante scape
$countryName = preg_replace('/\s+/', ' ', strip_tags($row2['country_code']));
?>
<option value="<?php echo $countryName; ?>">
<?php echo $countryName; ?>
</option>>
<?php
}
}
?>
</select>
希望这有帮助!
- 3 回答
- 0 关注
- 172 浏览
添加回答
举报