基于 URL 的 PHP 动态页面内容


php dynamic page content based on url

所以,有3个网址:

example.com/first
example.com/middle
example.com/last

在我的sql db中,有一个表格,其中包含与相关帖子对应的每个术语:

ID    NAME    POSTS
1     first   12,3,343
2     middle  23,1,432
3     last    21,43,99

因此,如果用户访问example.com/first,那么我想根据他们正在访问的网址显示"12,3,343"和其他帖子。

现在,这是我脑海中的工作方式:

  1. 用户类型"example.com/first"
  2. JS(ajax)或其他东西检测到URL(在这种情况下,检测"first")。
  3. 该术语被发送到 PHP 查询。
  4. 获取适当的信息,然后将其发送出去(通过 ajax 或其他方式)。

我接近这个对吗?服务器如何检测请求的 url?如果我知道服务器如何检测 url,我想我可以跳过前两个步骤,并且我可以直接查询正确的信息,而不是依靠 js 来检测它。

谢谢!

当你提到ajax时,我假设你并没有离开你所在的页面。我说的对吗?

如果是这样,您必须创建另一个 php 文件来响应请求:

  1. 将请求发送到 file.php,并将 url 作为查询字符串
  2. file.php中,让它查询数据库并json_encode数据。
  3. 检索数据并更新字段,而无需导航离开。

PHP 只执行一次(服务器端)。 如果要执行另一个查询,则必须导航到其他URL,或者只需通过ajax将请求发送到PHP文件。

您可以使用

以下语句获取 url 请求的段

$url = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
$segments = explode('/', $url);

现在,您已经拥有了数组中的所有段($segments) print_r($segments)获取所需段的索引。

现在将该细分与您的价值进行比较例如:

if( $segments[2] == 'first')
{
//Your Piece of code
}