如何在实际不存在的页面上显示信息?

时间:2011-10-20 12:03:20

标签: php jquery mysql html

我用html和jquery制作了我的搜索表单。当我在搜索字段中输入名称,然后单击搜索时,它检查了我指定的MySQL数据库,并在搜索字段中显示包含该文本的任何名称。网址是localhost / players.html,因为我现在在apache上测试它,它用于游戏服务器播放器统计页面。

我的结果显示了我想要的结果,在表格中显示了某些信息。

当点击结果时,我想在新页面上显示玩家统计数据,但我不想为每个注册的玩家创建和存储数千个页面。所以我想要它创建一个虚拟页面,或类似的东西。点击链接的地方,URL就像/p​​layers/PlayerName.html或者如果不可能,也许是player.php?action = getstats(PlayerName)我真的不确定如何做到这一点或者是否可能

我希望它能够工作,这样如果我要输入www.myurl.co.uk/players/PlayerName.html它会显示该播放器的统计页面,而不会显示html页面。

3 个答案:

答案 0 :(得分:2)

这样做

创建一个名为“player.php”的页面,此页面将接收参数UserID。

因此,在高分表中,为每个玩家添加链接,使用参数UserID

指向此页面
<a href="/player.php?player_id=xxxxx">Player</a>

点击它会转到player.php,你可以通过全局$ _GET变量得到你的参数

$player_id = $_GET["player_id"]

因此,在您的页面中只选择该用户的数据

$sql = "select * from player_stat where UserID = " . $player_id;

只需记住mysql_escape $ player_id,然后再将其添加到查询中以避免SQL注入

这很简单,您也可以使用URL重写apache模块来获取友情网址,例如/ player / stat / nick-name

但如果您的系统不支持此功能,那就更有用了。

答案 1 :(得分:1)

你需要使用PHP

例如,您将每个结果发送到player.php?id = PLAYER_ID,在该页面上,您需要使用请求的ID从数据库中获取该播放器信息

检查以下链接,以便于您使用

http://www.w3schools.com/php/php_mysql_intro.asp

http://www.w3schools.com/php/php_get.asp

答案 2 :(得分:0)

这是使用mod_rewrite完成的,mod_rewrite是一个根据模式重写URL的模块。您经常将这些模式输入到一个名为“.htaccess”的文件中,该文件放在您的Web根目录中。

例如:

RewriteEngine on
RewriteRule ^players/([^/]+).html.zip /search.php?playername=$1 [L]

如果您转到“/players/MikeRoberts.html”,那么您的PHP脚本“search.php”将收到值“MikeRoberts”(您可以使用$ _GET ['playername']访问它)。

请记住:您可能需要在服务器上启用mod_rewrite。请参阅:How to enable mod_rewrite for Apache 2.2或使用Google了解如何执行此操作。