【问题标题】:Including a persons name and last name in a url, battling with the space在 url 中包含人名和姓氏,与空格竞争
【发布时间】:2014-11-03 10:01:04
【问题描述】:

我对此很陌生,需要帮助 我正在尝试发送个性化的问候。只要发件人和受益人的姓名仅限于他们的名字,我的代码就可以完美运行。一旦我输入他们的姓氏,URL 就不包含它,我猜问题是因为他们的名字和姓氏之间有空格。 php 数据来自我网站上的输入

这是我的代码示例

<p>Dear <?php echo stripslashes($item -> iof_benname); ?></p>
<p></p>
<p>A donation has been made in your honour by: <?php echo stripslashes($item -> iof_name); ?></p>
<p></p>

 <p>Please <a href=http://myym.co.za/wp-content/uploads/2014/09/IHO.php?NAME=<?php echo stripslashes($item -> iof_name)?>&BNAME=<?php echo stripslashes($item -> iof_benname) >>click here</a> to view your message.</p> 

【问题讨论】:

  • href 周围添加引号 -> &lt;a href="http://myym.co.za/wp-content/uploads/2014/09/IHO.php?NAME=&lt;?php echo stripslashes($item -&gt; iof_name)?&gt;&amp;BNAME=&lt;?php echo stripslashes($item -&gt; iof_benname) ?&gt;"&gt;
  • 感谢肖恩,完美运行。感谢您的帮助。

标签: php html url


【解决方案1】:

首先,应该使用htmlspecialchars,而不是stripslashes来处理消毒。

其次,此类 URL 中的参数应使用 urlencode 进行转义。

【讨论】:

  • 我第一次尝试了上面肖恩的建议,效果很好。我还应该远离条纹吗?
  • @byraff Sean 的建议会有所帮助,原因与 urlencode 的原因相同 - 您的 URL 中有一个空格。没有引号意味着浏览器不知道空格是在 URL 中还是在新属性中。引号有帮助,urlencode 会帮助将空间变成类似%20 的东西。至于stripslashes,可能。这是一种非常过时的技术,可能不会像您认为的那样做。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-12-16
  • 1970-01-01
  • 1970-01-01
  • 2014-11-24
  • 1970-01-01
  • 2012-10-11
  • 1970-01-01
相关资源
最近更新 更多