PHP/HTML - 没有登录但来自导航链接的个人资料页面

标签 php mysql html sql

看了之后here我仍然很困惑。本质上,我有一个 html 导航栏。一个部分是“人”,在此之下是从 mysql 数据库中提取的不同人。

例如

-people
--john wayne
--tom adams
--etc

我在 html 代码中的链接是“people/johnwayne.html”,其中 johnwayne 是数据库中链接的另一个变量。

我没有使用这些链接,而是希望使用例如profile.php 页面,我将如何生成它?我看到像这样的链接

somedomain.com/profile.php?uid=$userid

在我首先看到的上面的链接中,他们有这样的东西

header( "Location: profile.php?uid=$userid" );

我可以连接到数据库,进行 sql 查询等。如果很清楚,我该如何在新页面上收集此 ID


编辑: 只是为了澄清一些示例代码,这里是菜单,

<ul class="dropdown-menu">
   <li>
      <a href="/people/johnwayne.html" title="John Wayne">John Wayne</a>
   </li>
   <li>
      <a href="/people/tomadams.html" title="Tom Adams">Tom Adams</a>
   </li>
</ul>

johnwayne 是 mysql 数据库中名为“链接”的表中的一个元素,“标题”等也是如此。 我不想要单独的 johnwayne.html、tomadams.html 页面,但所有链接的形式都是

"people/profile.php?uid=$link"
e.g. "people/profile.php?uid=johnwayne"

或者无论如何完成。 换句话说,profile.php 将生成一些文件查看'johnwayne' 的行,并获取所有数据以生成一个对所有人通用的html 页面

最佳答案

您将使用如下所示的 PHP 获取变量:

$user = $_GET['userid'];

但是您也将 promise 在尝试将其插入 MySQL 数据库查询之前清理该变量,好吗? :) 像这样:

$userClean = addslashes(mysql_real_escape_string($user));

或者更好的是,使用可接受选项的“白名单”。例如,如果您知道您只有五个人,请执行以下操作:

$user = $_GET['userid'];
if($user == 'shredder') {
  include('shredder.html');
} else if($user == 'splinter') {
  include('splinter.html');
} else if($user == 'turtles') {
  include('cowabunga.html');
}

安全第一! :)

关于PHP/HTML - 没有登录但来自导航链接的个人资料页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12613306/

相关文章:

php - Cake PHP 返回带有空值的记录

php - 获取或 session ?

php - 如何在 Eloquent 模型中动态设置表名

MySQL Pad 空月汇总报告。 (那里的 3/4 路)

php - 语法错误或访问冲突 : 1139 Got error 'empty (sub)expression' from regexp

php - 如何使用php同时向同一张 table 上的2个人发送电子邮件

html - asp.net mvc - 不同的 View 在 <head> 内部布局页面中需要不同的元标记

Phpunit 错误 - 断言节点失败,表示为

jquery - 未应用自动完成

PHP 画廊,缩略图列表