首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP : urldecode($str)不工作

PHP : urldecode($str)不工作
EN

Stack Overflow用户
提问于 2014-09-28 08:28:48
回答 1查看 696关注 0票数 0

我在看php lynda讲座。下面是一个简单的示例来详细说明urldecode()函数,但我不知道为什么这不适用于我。请给我指点它有什么问题

first_page.php

代码语言:javascript
复制
<?php $link_name='Second page' ;
      $id=2;    
      $name="Johnson & Johnson";
 ?>
<a href="second_page.php?id=<?php echo $id ?>&name=<?php echo urldecode($name);?>"><?php echo $link_name;?></a>

second_page.php

代码语言:javascript
复制
<?php  $id=$_GET['id']; 
           $name=$_GET['name'];
           echo $id.'<br/>'; 
           echo $name;          
?>

output

对我来说应该是强生,这是url字符串

代码语言:javascript
复制
id=2&name=Johnson%20&%20Johnson

为什么编码不正确?请帮帮忙

EN

回答 1

Stack Overflow用户

发布于 2014-09-28 08:34:57

它不能工作,因为您使用了错误的函数:

代码语言:javascript
复制
&name=<?php echo urldecode($name);

应该是urlencode()

代码语言:javascript
复制
<a href="second_page.php?id=<?php echo $id ?>&name=<?php echo urlencode($name);?>"><?php echo $link_name;?></a>
                                                                ^^^ encode not decode

还有另一种方式:

代码语言:javascript
复制
<?php
$link_name = 'Second page';
$id = 2;    
$name = "Johnson & Johnson";

$query_string = array('id' => $id, 'name' => $name);
$query_string = http_build_query($query_string);

?>
<a href="second_page.php?<?php echo $query_string; ?>"><?php echo $link_name; ?></a>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26083052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档