通过PHP在具有空格

时间:2017-06-23 07:25:19

标签: php mysql url get concatenation

我通过URL将数据库中的变量值传递给一个PHP页面,该变量值中包含空格。空格之前的值成功通过但不在空格之后。我能做些什么来传递完整的价值?我已完成的URL连接显示在下面的代码中。 请帮忙!

<?php $linking = "appointment.php?name=";
$linking .="$row[5]";
echo "<a href=$linking>BOOK AN APPOINTMENT</a>" 
?>

4 个答案:

答案 0 :(得分:3)

使用urlencode()

对您的值进行编码

答案 1 :(得分:2)

urlencode应该这样做。还在href周围加上双引号。

<?php $linking = "appointment.php?name=";
$linking .= urlencode($row[5]);
echo "<a href=\"$linking\">BOOK AN APPOINTMENT</a>" 
?>

进一步的改进是添加htmlspecialchars以防止&amp; $ row [5]中的字符和“in in:

中的字符
<?php $linking = "appointment.php?name=";
$linking .= urlencode($row[5]);
echo "<a href=\"".htmlspecialchars($linking, ENT_QUOTES)."\">BOOK AN APPOINTMENT</a>" 
?>

答案 2 :(得分:0)

您也可以尝试rawurlencode。这会将空格编码为%20而不是+。

urlencode 将空格编码为+符号,而 rawurlencode 编码为%20。

<?php 
$linking = "appointment.php?name=";
$linking .=rawurlencode($row[5]);
echo "<a href=$linking>BOOK AN APPOINTMENT</a>" 
?>

答案 3 :(得分:-1)

用“ - ”或任何你想要的东西替换空格,用str_replace作为例子。然后当你检索它时,只需用空格替换小丑。