2010-09-23 62 views
4

我想通过这个参数topic到另一页,php获取函数的问题?

p.s.该页面使用jquery加载?

的网址:

http://localhost/final/home.php#page2?topic=jquery 
现在

,我想回显#2页

<h3 class="timeline"><?php echo $_GET["topic"]; ?> </h3> 

但它deosnt回声,任何解决方案,遗憾的newbiw问题:)的话题)

load_page.php

<?php 
if(!$_POST['page']) die("0"); 

$page = (int)$_POST['page']; 

if(file_exists('pages/page_'.$page.'.php')) 
include('pages/page_'.$page.'.php'); // i.e page_2.php 

else echo 'There is no such page!'; 
?> 

回答

7

你的URL必须是这样的:任何后

http://localhost/final/home.php?topic=jquery#page2 

哈希(#)不是由浏览器发送的,这纯粹是的浏览器,例如滚动到正确的位置,一个办法做到AJAX历史,等等...但它不是在请求中发送,目前所有的服务器得到的是:

http://localhost/final/home.php 

这就解释了为什么_GET["topic"]是空的。

+0

感谢您的回答,但主题参数没有呼应页面上,页面加载好的,但 – pingpong 2010-09-23 11:04:17

+0

@pingpong - 你改变,因此订单后它在'#'之前还没有回应? – 2010-09-23 11:05:15

+0

@nick yeh我已经改变了顺序,页面加载没问题,希望回声得到部分? – pingpong 2010-09-23 11:07:54

0

实际效果,URL结束于#。其他任何东西都不会发送到服务器。

你可能想这样的:

http://localhost/final/home.php?topic=jquery#page2 
0

只要使用PHP的parse_url功能,做这样的事情:

$url = 'http://username:[email protected]/path?arg=value#anchor'; 
//Replace the URL in your case with "http://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"] 

print_r(parse_url($url)); 

echo parse_url($url, PHP_URL_PATH) 

哪样退货:

Array 
(
    [scheme] => http 
    [host] => hostname 
    [user] => username 
    [pass] => password 
    [path] => /path 
    [query] => arg=value 
    [fragment] => anchor 
) 
/path 

在你的情况下,它会更喜欢:

Array 
(
    [scheme] => http 
    [host] => localhost 
    [path] => /final/home.php 
    [query] => topic=jquery 
    [fragment] => page2 
)