我有2个文件。 "的index.php"和" output.php"。在index.php里面我有一个下拉列表,其中包含从mysql表中获取的所有意大利城市。我的测试范围是从下拉列表中选择一个城市,并将值发送到打印该值的output.php。
这是我的代码:
-index.php:
<form action="output.php" method="post">
<div align="center">
<?php
echo "Questa è una prova";
// Open db connection
$con = mysqli_connect ( "127.0.0.1", "root", "", "test" );
// Check connection
if (mysqli_connect_errno ( $con )) {
echo "Failed to connect to MySQL: " . mysqli_connect_error ();
}
echo "</br>";
echo "</br>";
echo "</br>";
//Query principale
$result = mysqli_query ( $con, "SELECT * FROM it_cities" );
?>
<select name="fcity">
<?php
while($row = mysqli_fetch_array($result))
{
echo '<option value=' . $row['comuni'] . '>' . $row['comuni'] . '</option>';
echo "<br>";
}
?>
</select>
</br>
<input type="submit" value="Invia">
</div>
</form>
-output.php:
<?php
$city= $_REQUEST ['fcity'] ;
echo "$city" ;
?>
我的问题是包含空格的字符串(例如&#34; Abano Terme&#34;只有&#34; Abano&#34;在屏幕上打印出来。)
由于
答案 0 :(得分:1)
这是因为您在option
元素周围缺少引号。
echo '<option value=' . $row['comuni'] . '>' . $row['comuni'] . '</option>';
^----------------------^
将其更改为
echo '<option value="' . $row['comuni'] . '">' . $row['comuni'] . '</option>';