仅显示数据库中的选定值

时间:2019-07-25 08:55:39

标签: php mysql mysqli

<?php   

$sql = "SELECT * FROM team;";
$result = mysqli_query($conn, $sql );

$row = mysqli_fetch_row($result);
$teamname = $row[1];

echo $teamname;

DB中的考虑表由1-10之间的10个名称组成。那将像往常一样在屏幕上显示(使用检索),但是问题是当我单击屏幕上显示的1-10中的任何名称时,应该通过仅显示我选择的特定名称来打开新页面。

我尝试了这个,但是所有值都显示了。

2 个答案:

答案 0 :(得分:1)

首先,在您的mysql表中添加一个名为“ ID”的列,以将数字与每个名称相关联。

像这样将用户定向到您的页面之后

T3=inverse(m2*R3)*m3

因此您可以使用GET来获取姓名的ID,然后仅将姓名显示在页面上

(即使并非绝对必要,也始终使用Prepared Statement

PHP脚本

<a href="www.example.com/page.php?id=1">Name n.1</a> // etc..

如果您还有其他需要,请在下面评论。

答案 1 :(得分:-1)

在团队表中,表的每一行必须具有唯一的键才能调用它们。如果您可以访问phpMyAdmin,则只需执行此操作即可。

首先,您需要使用这些选项将列添加为TEAM_MEMBER_ID

  • smallint ID值将成为整数类型值,并且ID将随着自动添加的每条记录+1递增
  • 标记为自动缩进的选项,该选项可自动增加唯一ID值,
  • 选中索引选择框选项,将其标记为“唯一”

因此,您将能够列出带有唯一ID的行。并将其唯一ID链接到您的HTML链接,如下所示:

<a href="index.php?id=<?php echo $row['TEAM_MEMBER_ID']?>">
  <?php echo $row['name'] ?>
</a>

现在,您可以从 QUERY STRING 获得其唯一ID。您的SQL应该是这样的:

mysqli_query('select
  *
from
  `team`
where
  `TEAM_MEMBER_ID`="'. $_GET['id'] .'"
limit 1');

注意:这仅是列表唯一行要显示在页面中的逻辑。不安全如果安全,则应检查您的QUERY STRING值。我建议您使用 PDO类而不是 mysqli 。使用 PDO ,您可以使用prepare语句安全地绑定和使用SQL查询中的值。

这是签出的官方页面:https://php.net/manual/en/pdostatement.bindparam.php