例如,
用户输入,
www.foob.com/some_path
我不想为用户可能使用的每个不同标识符实际拥有some_path文件夹...例如,如果它是一个人的名字,就像许多社交应用程序中所见。
www.foob.com/some_path1
但是,我想将其作为变量阅读并提供相关内容
的JavaScript
var foo = 'some_path1'
PHP
$foo = 'some_path1';
如何将'some_path1'变成foo?
注意
some_path是一个变量,它可能包含
some_path_1
some_path_2
some_path_3
澄清
所以拿facebook.com
如果你去
www.facebook.com/your_name
并不是所有10亿用户都有不同的目录。
使用用户特定数据填充通用页面。
如何获取id your_name?
答案 0 :(得分:2)
您需要设置www.foob.com/some_path
以指向.htaccess文件中包含index.php?q=some_path
或类似内容的PHP脚本网址:
RewriteEngine On
RewriteRule ^([a-zA-Z0-9-z\-]+)$ index.php?q=$1
然后,只需在PHP文件中基于$_GET['q']
提供不同的内容。
或在Javascript中使用它:
echo '<script>...var q = ' . $_GET['q'] . ';</script>';
答案 1 :(得分:2)
您可以使用$_SERVER['REQUEST_URI']
通过PHP获取此信息。如果您想在JavaScript中使用它,请查看window.location
对象(可能是window.location.href
或window.location.pathname
)。两者可能都需要一些解析才能抓住你想要的部分。
关于将这些请求发送到您的脚本的重写规则,我会使用类似这样的内容,它会重定向所有通过app.php找不到的文件请求。这应该放在您网站根目录下的.htaccess文件中。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
答案 2 :(得分:1)
将.htaccess文件添加到根目录。
的的.htaccess 强> 的
RewriteEngine On
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?page=$1 [L]
您可以在index.php
页面的顶部添加类似的内容:
<html>
<head>
<title> MyWebsite <?php echo '~'.ucwords($desired_page); ?> </title>
<?php
$page_array = array(
"home", "blog", "news",
"links", "about", "contact"
);
$desired_page = (isset($_REQUEST['page'])) ?
$_REQUEST['page'] : "home";
if(!in_array($desired_page, $page_array))
$desired_page = "error";
?>
</head>
<body>
<div id="menu">
<ul>
<li <?php if($desired_page=="home")
echo("class=\"current\""); ?>>
<a href="home">Home</a></li>
<li <?php if($desired_page=="blog")
echo("class=\"current\""); ?>>
<a href="blog">Blog</a></li>
<li <?php if($desired_page=="news")
echo("class=\"current\""); ?>>
<a href="news">News</a></li>
<li <?php if($desired_page=="links")
echo("class=\"current\""); ?>>
<a href="links">Links</a></li>
<li <?php if($desired_page=="about")
echo("class=\"current\""); ?>>
<a href="about">About Us</a></li>
<li <?php if($desired_page=="contact")
echo("class=\"current\""); ?>>
<a href="contact">Contact Us</a></li>
</ul>
</div><!--end menu-->
<div id="content">
<?php
/*Includes specific page content*/
include("content/".$desired_page.".php");
?>
</div> <!-- end #content -->
</body>
</html>