我无法将 php 变量发布到另一个页面。该变量是从用户选择的下拉列表中检索的,如果它包含撇号,我只会在发布撇号之前获得部分。IE 如果我想发布“Cooper's Hawk”,我只会收到“Cooper”。如何正确转义,以便发布整个字符串?
这就是我所拥有的:
echo '<form method="POST" action="advanced_search2.php">';
$dropdown_english_name = "<select class = 'dropdown' name='english_name'> <option>ALL</option>";
$query = "SELECT DISTINCT english_name FROM moth_sightings WHERE user_id ='$username'ORDER BY english_name asc";
$result = mysql_query($query) or die(mysql_error());
echo "<tr><td>English Name:</td>";
while($row = mysql_fetch_assoc($result))
{
$dropdown_english_name .= "\r\n<option class = 'dropdown_active' value='{$row['english_name']}'>{$row['english_name']}</option>";
}
$dropdown_english_name .= '\r\n</select>';
echo '<td>' . $dropdown_english_name .'</td></tr>';
在不同的页面上
$posted_value = ($_POST['english_name']);
echo $posted_value;die;
因此,为了从上面的代码中澄清,发布的字符串是“cooper's hawk”,但回显的输出是“Cooper”。提前感谢您的任何提示。