每当用户询问新问题时,stackoverflow如何生成网页。我需要使用用户数据提供的名称生成一个php文件。
答案 0 :(得分:2)
Stack Overflow不会为每个问题创建一个新页面,就像Facebook不会为每个配置文件,组和类似的东西创建一个页面。
如果您查看浏览器地址栏中的网址,您会看到以下内容:
http://stackoverflow.com/questions/27679474/how-to-generate-dynamically-a-web-page-in-php
在指向问题之后,它始终是具有新ID的相同URL(stackoverflow.com/questions/)。在这种情况下,它使用URL重写来使URL更漂亮(以及其他一些东西),但这不是必需的。
只有一个“问题”页面,它正在查看URL中的ID,获取正确的数据并显示它。这并不复杂,任何初学者的PHP教程都应该涵盖这一点。
在实践中,你可以这样:
URL : website.com/questions?id=123
并且,在questions.php
页面中:
$id = $_GET['id']; //$id will contain 123
//Do some treatment (ex: SQL query) with the ID in it
$query = "SELECT * FROM table WHERE id = $id";
这是一个非常基本的,没有安全性的例子,但它只是向您展示它原则上是如何工作的。