众所周知,Facebook是一个非常好的基于php的应用程序。我想知道他们是如何为用户配置文件创建页面的。如何创建像模板文件一样的html页面
正如我们所知,每个用户的页面看起来都一样,只有页面内的内容会根据用户而改变。
那么我们如何使用php创建类似的东西。我们如何将html页面作为模板并根据用户登录进行调用。
我想要一些想法开始,因为我正在构建类似的东西。
众所周知,Facebook是一个非常好的基于php的应用程序。我想知道他们是如何为用户配置文件创建页面的。如何创建像模板文件一样的html页面
正如我们所知,每个用户的页面看起来都一样,只有页面内的内容会根据用户而改变。
那么我们如何使用php创建类似的东西。我们如何将html页面作为模板并根据用户登录进行调用。
我想要一些想法开始,因为我正在构建类似的东西。
您需要使用一些标签,并且在输出时,您应该用特定内容替换此标签。当{text}是标签时,一个很好的示例是 <p>{text}</p>
。
你真的不需要这个模板系统。只需传递不同的数据即可。
<?
$user = mysql_query("SELECT * FROM users WHERE id='62' LIMIT 1");
$u = mysql_fetch_array($user);
?>
Welcome, <?=$u['username']?>.<br><br>
Thanks for visiting our site. How is your mother, <?=$u['mother_name']?>?<br><br>
Username: <input type="text" name="username" value="<?=$u['username']?>" />
显然,这可以使用一些调整,更多的检查,实际形式tag..etc等等等等,但它应该给你如何编写动态页面是一个好主意,而无需模板型标签 - 替换系统。
听起来不错。让我试试这个选项 – 2011-06-02 20:40:12
欢迎的动态网页设计世界,
假设你不想寻找到一个CMS:
从本质上讲,你要创建一个网页,但不是内容,你将有PHP最有可能请求和回应数据库内容的标签,内容通常由一个get变量(在Facebook的情况下,该变量是用户ID)确定。
更具体地说,你会在你的页面的顶部使用下面的代码的一个更复杂的版本:
<?php
$givenId = $_GET["uid"]; //or whatever your get variable is
if(ctype_digit($givenId)){ //or whatever validation you want to use to prevent sql injection
$givenId = intval($givenId);
mysql_connect("localhost", "USERNAME", "PASSWORD");
mysql_select_db("YOUR_DB");
$oisthere = mysql_query("SELECT * FROM TABLE WHERE id=$givenId");
mysql_close();
if(mysql_num_rows($oisthere)!=0){
$sqlholder = mysql_fetch_row($oisthere);
}
else{
//return error
}
}
?>
然后在你的页面,你可以有<?php echo($sqlholder[1]); ?>
,其中拳头列保存自己的用户名或引用状态或其他重要数据。
然而,你问这个问题的事实告诉我,你一般不太了解php,mysql和动态网页设计。因此,我建议你在阅读和掌握概念之前不要开始构建自己的网站。作为开始的地方,我建议:w3schools。
请阅读[常见问题](http://stackoverflow.com/faq)。 – Oded 2011-06-02 20:28:52