2010-05-09 65 views
0

我想从Javascript发送一个变量到一个PHP脚本,但发送的是第一个字符串,其余的都被丢弃了。不知道我会做错什么。 这里是我的代码:JavaScript to PHP

<script type="text/javascript"> 
document.write(<li><a href=../../../../projects/sungrant/view/HistoricalCategory2.php?category=Historical Category 2>Historical Category 2 </a></li>) 
</script> 

我的$ _GET [ '类']在服务器端只打印历史?不知道我可能会丢失什么,或者如果有更好的方式从Javascript转换为PHP数据,我将不胜感激。

回答

0

问题是与您的网址 - 您还没有编码的空间,因此只挑选了第一个变量

../../../../projects/sungrant/view/HistoricalCategory2.php?category=Historical Category 2

应该

../../../../projects/sungrant/view/HistoricalCategory2.php?category=Historical+Category+2

../../../../projects/sungrant/view/HistoricalCategory2.php?category=Historical%20Category%202

+0

属性值也需要引用。 – Quentin 2010-05-09 20:45:13

3

将您的href属性值用引号括起来或将空格更改为%20

href="../../../../projects/sungrant/view/HistoricalCategory2.php 
               ?category=Historical Category 2" 

href=../../../../projects/sungrant/view/HistoricalCategory2.php 
               ?category=Historical%20Category%202 

它不带空格的工作的原因是,在有效的HTML中,属性用空格隔开。如果您需要在HTML属性值中使用空格,请确保使用引号包装字符串。如果它是一个URL,浏览器将为您执行必要的URL编码。

+0

或使用'+'而不是'%20'作为[prodigitalson](http://stackoverflow.com/questions/2798926/javascript-to-php/#2798940)提到。 – 2010-05-09 19:49:41