PHP-Strings包含空间输出

时间:2014-02-04 14:50:57

标签: php html mysql web

我有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;在屏幕上打印出来。)

由于

1 个答案:

答案 0 :(得分:1)

这是因为您在option元素周围缺少引号。

echo '<option value='  . $row['comuni'] .  '>' . $row['comuni'] . '</option>';
                    ^----------------------^

将其更改为

echo '<option value="'  . $row['comuni'] .  '">' . $row['comuni'] . '</option>';