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

时间:2013-09-20 21:59:56

标签: php mysql sql

我有一个包含4列的表(id,name,surname,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。

1 个答案:

答案 0 :(得分:1)

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

GET通过网址以

捐赠的格式发送所有数据
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发送数据的表单,你只需要更改它所说的部分     方法= “POST” 至     方法= “GET”

我希望这有帮助!

编辑:

说你有几个链接:

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

在page.php的代码中,你可以通过使用代码看到'id'等于:

$var = $_GET['id'];

将从网址中获取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,