如何在php和mysql中为每一行创建唯一的页面


How to create unique page for each row in php and mysql?

我有一个包含 4 列(id、姓名、姓氏、url)的表。我想为每一行创建唯一的子页面。(example.com/id?=444)。因此,如果我访问 example.com?id=444,我将看到 id 为 444 的行中的数据。

现在我有将数据添加到数据库中的表单:

 <form action="motogp.php" method="POST"> <input type="text"
 name="name" placeholder="Ime"> <input type="text" name="surname"
 placeholder="Priimek"> <input type="text" name="url" placeholder="URL
 do slike"> <button type="reset" class="ui button">Počisti</button>
 <button type="submit" class="ui positive button">Pošlji</button>
 </form>

MotoGP.php页面代码:

$sql="INSERT INTO person (name, surname, url)
VALUES
('$_POST[name]','$_POST[sruname]','$_POST[url]')";
if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }

$result = mysqli_query($con,"SELECT * FROM person ORDER BY id DESC LIMIT 1");

while($row = mysqli_fetch_array($result))
  {
  echo "<h2>VIDEO: " . $row['name'] . . $row['surname'] . " z drugo zaporedno zmago zmanjšal zaostanek za Marquezom</h2>";
  echo "<img src='images/avoter.png'>";
  echo "<img src='" .  $row['url'] ."'>";
}

现在它只给了我 example.com/motogp.php 而不是 example.com/?id=444。

您需要使用 $_GET[''] 而不是 $_POST['']。

GET通过URL以捐赠的格式发送您的所有数据

website.com/page.php?v=d&v=d

其中 v 是一个变量,d 是分配给它的某种数据。如果需要动态创建的页面。您需要通过 GET 发送它

因此,如果您想要的页面是 website.com/page.php?id=4为了从ID 为 4 的数据库条目中获取数据,您需要执行以下操作

<?php
$id = $_GET['id']; //in the case of the URL above, it will equal four
?>

然后,您将该$id变量并通过查询来运行它,以获取所需的特定数据。

如果你想制作一个通过GET而不是POST发送数据的表单,你只需要改变它说的部分 方法="发布"自 方法="获取"

我希望这有帮助!

编辑:

假设您有几个链接:

website.com/page.php?id=1
website.com/page.php?id=2
website.com/page.php?id=3

在 Page.php 的代码中,您可以使用代码查看"id"等于什么:

$var = $_GET['id'];

这将从 URL 中获取 id 的值。

So for website.com/page.php?id=1 $var is equal to 1,
for website.com/page.php?id=2 $var is equal to 2,
for website.com/page.php?id=3 $var is equal to 3,