仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 742|回复: 18
打印 上一主题 下一主题

[学习教程] PHP编程:PHP实例教程(3):构建基于PHP的微博客服...

[复制链接]
跳转到指定楼层
楼主
发表于 2015-2-3 23:44:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
刚开始写页面程序,调试完书中的例子。然后就可以尝试编写留言板了,   </p> 跟随其他用户
接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 show_users() 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。

清单 10. show_users() 函数
  1. function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. <?php
  2. $users = show_users();
  3. $following = following(跟随其他用户
  4. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  5. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  6. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. ___FCKpd___4
复制代码

接上去的步调很复杂:创立 follow 和 unfollow 链接利用的 action.php 文件。该文件承受两个 GET 参数:一个用于用户 ID,另外一个用于 follow 或 unfollow。如清单 14 所示,这个文件和 add.php 文件一样冗长。

清单 14. action.php 文件
  1. <?php
  2. session_start();
  3. include_once("header.php");
  4. include_once("functions.php");
  5. $id = 跟随其他用户
  6. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  7. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  8. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. <?php
  2. $users = show_users();
  3. $following = following(跟随其他用户
  4. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  5. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  6. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. ___FCKpd___4
复制代码

接上去的步调很复杂:创立 follow 和 unfollow 链接利用的 action.php 文件。该文件承受两个 GET 参数:一个用于用户 ID,另外一个用于 follow 或 unfollow。如清单 14 所示,这个文件和 add.php 文件一样冗长。

清单 14. action.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>8
复制代码

可以看到,这里取决于之前选择的链接,接纳两种分歧的举措 — follow_user()unfollow_user()。然后,设置一条动静,并将用户重定向回 index.php 页面。用户回到 index.php 页面后,不但可以看到本人的动静,还可以看到他们跟随的用户比来添加的动静。或,假如之前选择 unfollow 链接,那末谁人用户的动静将从列表中消逝。稍后需求在 index.php 中添加这点代码。如今,将 follow_user()unfollow_user() 函数添加到 functions.php 中。
关于这两个函数要当心一点。不克不及只是由于用户单击了谁人链接,就自觉地跟随或保持跟随一个用户。起首,需求反省 following 表中是不是存在如许的关系。假如存在,那末可以疏忽恳求(单击 follow 链接时),或承受恳求(单击 unfollow 链接时)。为复杂起见,编写两种情形下都可使用的一个 check_count() 函数,以下面的清单所示。

清单 15. check_count() 函数
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>9
复制代码

接上去的步调很轻易:在主页上显示以后用户正在跟随的其他用户的列表。固然已有了一个 show_users() 函数,但谁人函数是显示一切 用户。可以经由过程增添一个非必须的参数,轻松地改动这个函数的用处。这个参数是一个用户 ID,可以用该参数将用户列表限制为该用户 ID 所跟随的那些用户。
清单 16 中从头编写的代码所做的工作是反省传入的 $user_id 参数。假如该用户 ID 大于 0,则利用一个查询获得此 ID 跟随的一切用户的 ID。利用 implode() 函数将取得的数组转换为一个以逗号分隔的列表。然后将这个字符串 — 大致为 and id in (1,2,3...n) — 拔出到已有的 SQL 查询中,从而将用户列表限制为该用户正在跟随的那些用户。

清单 16. 从头编写的代码,用于限制经由过程查询取得的用户列表
  1. <p><a href="users.php">see list of users</a></p>0
复制代码

接上去,将清单 17 中的代码添加到主页中,用于显示一切那些被跟随的用户。

清单 17. 修正 index.php 以显示被跟随的用户
  1. <h2>Users you"re following</h2>
  2. <?php
  3. $users = show_users(跟随其他用户
  4. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  5. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  6. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. <?php
  2. $users = show_users();
  3. $following = following(跟随其他用户
  4. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  5. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  6. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. ___FCKpd___4
复制代码

接上去的步调很复杂:创立 follow 和 unfollow 链接利用的 action.php 文件。该文件承受两个 GET 参数:一个用于用户 ID,另外一个用于 follow 或 unfollow。如清单 14 所示,这个文件和 add.php 文件一样冗长。

清单 14. action.php 文件
  1. <?php
  2. session_start();
  3. include_once("header.php");
  4. include_once("functions.php");
  5. $id = 跟随其他用户
  6. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  7. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  8. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. <?php
  2. $users = show_users();
  3. $following = following(跟随其他用户
  4. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  5. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  6. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. ___FCKpd___4
复制代码

接上去的步调很复杂:创立 follow 和 unfollow 链接利用的 action.php 文件。该文件承受两个 GET 参数:一个用于用户 ID,另外一个用于 follow 或 unfollow。如清单 14 所示,这个文件和 add.php 文件一样冗长。

清单 14. action.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>8
复制代码

可以看到,这里取决于之前选择的链接,接纳两种分歧的举措 — follow_user()unfollow_user()。然后,设置一条动静,并将用户重定向回 index.php 页面。用户回到 index.php 页面后,不但可以看到本人的动静,还可以看到他们跟随的用户比来添加的动静。或,假如之前选择 unfollow 链接,那末谁人用户的动静将从列表中消逝。稍后需求在 index.php 中添加这点代码。如今,将 follow_user()unfollow_user() 函数添加到 functions.php 中。
关于这两个函数要当心一点。不克不及只是由于用户单击了谁人链接,就自觉地跟随或保持跟随一个用户。起首,需求反省 following 表中是不是存在如许的关系。假如存在,那末可以疏忽恳求(单击 follow 链接时),或承受恳求(单击 unfollow 链接时)。为复杂起见,编写两种情形下都可使用的一个 check_count() 函数,以下面的清单所示。

清单 15. check_count() 函数
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>9
复制代码

接上去的步调很轻易:在主页上显示以后用户正在跟随的其他用户的列表。固然已有了一个 show_users() 函数,但谁人函数是显示一切 用户。可以经由过程增添一个非必须的参数,轻松地改动这个函数的用处。这个参数是一个用户 ID,可以用该参数将用户列表限制为该用户 ID 所跟随的那些用户。
清单 16 中从头编写的代码所做的工作是反省传入的 $user_id 参数。假如该用户 ID 大于 0,则利用一个查询获得此 ID 跟随的一切用户的 ID。利用 implode() 函数将取得的数组转换为一个以逗号分隔的列表。然后将这个字符串 — 大致为 and id in (1,2,3...n) — 拔出到已有的 SQL 查询中,从而将用户列表限制为该用户正在跟随的那些用户。

清单 16. 从头编写的代码,用于限制经由过程查询取得的用户列表
  1. <p><a href="users.php">see list of users</a></p>0
复制代码

接上去,将清单 17 中的代码添加到主页中,用于显示一切那些被跟随的用户。

清单 17. 修正 index.php 以显示被跟随的用户
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}2
复制代码
SESSION["userid"]);

if (count($users)){
?>
<table border="1" cellspacing="0" cellpadding="5" width="500">
<?php
foreach ($users as $key => $value){
        echo "<tr valign="top">\n";
        echo "<td>".$key ."</td>\n";
        echo "<td>".$value;
        if (in_array($key,$following)){
echo " <small>
<a href="action.php?id=$key&do=unfollow">unfollow</a>
</small>";
        }else{
echo " <small>
<a href="action.php?id=$key&do=follow">follow</a>
</small>";
        }
        echo "</td>\n";
        echo "</tr>\n";
}
?>
[/code]
接上去的步调很复杂:创立 follow 和 unfollow 链接利用的 action.php 文件。该文件承受两个 GET 参数:一个用于用户 ID,另外一个用于 follow 或 unfollow。如清单 14 所示,这个文件和 add.php 文件一样冗长。

清单 14. action.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>8
复制代码

可以看到,这里取决于之前选择的链接,接纳两种分歧的举措 — follow_user()unfollow_user()。然后,设置一条动静,并将用户重定向回 index.php 页面。用户回到 index.php 页面后,不但可以看到本人的动静,还可以看到他们跟随的用户比来添加的动静。或,假如之前选择 unfollow 链接,那末谁人用户的动静将从列表中消逝。稍后需求在 index.php 中添加这点代码。如今,将 follow_user()unfollow_user() 函数添加到 functions.php 中。
关于这两个函数要当心一点。不克不及只是由于用户单击了谁人链接,就自觉地跟随或保持跟随一个用户。起首,需求反省 following 表中是不是存在如许的关系。假如存在,那末可以疏忽恳求(单击 follow 链接时),或承受恳求(单击 unfollow 链接时)。为复杂起见,编写两种情形下都可使用的一个 check_count() 函数,以下面的清单所示。

清单 15. check_count() 函数
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}4
复制代码

接上去的步调很轻易:在主页上显示以后用户正在跟随的其他用户的列表。固然已有了一个 show_users() 函数,但谁人函数是显示一切 用户。可以经由过程增添一个非必须的参数,轻松地改动这个函数的用处。这个参数是一个用户 ID,可以用该参数将用户列表限制为该用户 ID 所跟随的那些用户。
清单 16 中从头编写的代码所做的工作是反省传入的 $user_id 参数。假如该用户 ID 大于 0,则利用一个查询获得此 ID 跟随的一切用户的 ID。利用 implode() 函数将取得的数组转换为一个以逗号分隔的列表。然后将这个字符串 — 大致为 and id in (1,2,3...n) — 拔出到已有的 SQL 查询中,从而将用户列表限制为该用户正在跟随的那些用户。

清单 16. 从头编写的代码,用于限制经由过程查询取得的用户列表
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}5
复制代码

接上去,将清单 17 中的代码添加到主页中,用于显示一切那些被跟随的用户。

清单 17. 修正 index.php 以显示被跟随的用户
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}2
复制代码
GET["id"];
$do = 跟随其他用户
接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 show_users() 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。

清单 10. show_users() 函数
  1. function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. <?php
  2. $users = show_users();
  3. $following = following(跟随其他用户
  4. 接上去可以将更多器材添加到 functions.php 文件中。这里需求一个 [font=NSimsun]show_users()[/font] 函数,该函数可以前往体系中一切用户的一个列表。前面将利用这个函数填充一个用户列表。
  5. [b]清单 10. [font=NSimsun]show_users()[/font] 函数[/b]
  6. [code] function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}
复制代码

有了 show_users() 函数以后,接上去可以创立一个 users.php 文件,该文件将运转这个函数,并显示体系中一切用户的一个列表,关于每一个用户,在用户名的旁边都有一个 follow 链接。

清单 11. 运转 show_users() 函数的 users.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>
复制代码

为了会见这个用户列表,在 index.php 文件中表单的上方添加一个到 users.php 的链接:
  1. <p><a href="users.php">see list of users</a></p>
复制代码

如今有了一个易于利用的用户名列表,每一个用户名旁有一个 follow 链接。

图 2. 用户列表



在进入下一个阶段之前,还需求编写一个小函数,该函数将前往以后用户正在跟随的用户。如许一来,用户就能够用这个列表来肯定是不是跟随另外一个用户。
回到 functions.php 文件,添加一个名为 following() 的函数,如清单 12 所示。将以后用户 ID 传递给该函数,就能够失掉该用户正在跟随的每一个用户的 ID。

清单 12. following() 函数
  1. function following($userid){        $users = array();        $sql = "select distinct user_id from following where follower_id = "$userid"";        $result = mysql_query($sql);        while($data = mysql_fetch_object($result)){ array_push($users, $data->user_id);        }        return $users;}
复制代码

如今可以在 users.php 上运转这个函数,反省某个用户 ID 是不是在该数组中。假如在,则利用 unfollow 链接。假如不在,则利用默许的 follow 链接。清单 13 显示修正后的代码。

清单 13. 修正后的 users.php 文件,它将显示 follow 和 unfollow 链接
  1. ___FCKpd___4
复制代码

接上去的步调很复杂:创立 follow 和 unfollow 链接利用的 action.php 文件。该文件承受两个 GET 参数:一个用于用户 ID,另外一个用于 follow 或 unfollow。如清单 14 所示,这个文件和 add.php 文件一样冗长。

清单 14. action.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>8
复制代码

可以看到,这里取决于之前选择的链接,接纳两种分歧的举措 — follow_user()unfollow_user()。然后,设置一条动静,并将用户重定向回 index.php 页面。用户回到 index.php 页面后,不但可以看到本人的动静,还可以看到他们跟随的用户比来添加的动静。或,假如之前选择 unfollow 链接,那末谁人用户的动静将从列表中消逝。稍后需求在 index.php 中添加这点代码。如今,将 follow_user()unfollow_user() 函数添加到 functions.php 中。
关于这两个函数要当心一点。不克不及只是由于用户单击了谁人链接,就自觉地跟随或保持跟随一个用户。起首,需求反省 following 表中是不是存在如许的关系。假如存在,那末可以疏忽恳求(单击 follow 链接时),或承受恳求(单击 unfollow 链接时)。为复杂起见,编写两种情形下都可使用的一个 check_count() 函数,以下面的清单所示。

清单 15. check_count() 函数
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}4
复制代码

接上去的步调很轻易:在主页上显示以后用户正在跟随的其他用户的列表。固然已有了一个 show_users() 函数,但谁人函数是显示一切 用户。可以经由过程增添一个非必须的参数,轻松地改动这个函数的用处。这个参数是一个用户 ID,可以用该参数将用户列表限制为该用户 ID 所跟随的那些用户。
清单 16 中从头编写的代码所做的工作是反省传入的 $user_id 参数。假如该用户 ID 大于 0,则利用一个查询获得此 ID 跟随的一切用户的 ID。利用 implode() 函数将取得的数组转换为一个以逗号分隔的列表。然后将这个字符串 — 大致为 and id in (1,2,3...n) — 拔出到已有的 SQL 查询中,从而将用户列表限制为该用户正在跟随的那些用户。

清单 16. 从头编写的代码,用于限制经由过程查询取得的用户列表
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}5
复制代码

接上去,将清单 17 中的代码添加到主页中,用于显示一切那些被跟随的用户。

清单 17. 修正 index.php 以显示被跟随的用户
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}2
复制代码
SESSION["userid"]);

if (count($users)){
?>
<table border="1" cellspacing="0" cellpadding="5" width="500">
<?php
foreach ($users as $key => $value){
        echo "<tr valign="top">\n";
        echo "<td>".$key ."</td>\n";
        echo "<td>".$value;
        if (in_array($key,$following)){
echo " <small>
<a href="action.php?id=$key&do=unfollow">unfollow</a>
</small>";
        }else{
echo " <small>
<a href="action.php?id=$key&do=follow">follow</a>
</small>";
        }
        echo "</td>\n";
        echo "</tr>\n";
}
?>
[/code]
接上去的步调很复杂:创立 follow 和 unfollow 链接利用的 action.php 文件。该文件承受两个 GET 参数:一个用于用户 ID,另外一个用于 follow 或 unfollow。如清单 14 所示,这个文件和 add.php 文件一样冗长。

清单 14. action.php 文件
  1. <?php session_start();include_once("header.php");include_once("functions.php");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>        <meta http-equiv="content-type" content="text/html; charset=utf-8" />        <title>Microblogging Application - Users</title></head><body><h1>List of Users</h1><?php$users = show_users();if (count($users)){?><table border="1" cellspacing="0" cellpadding="5" width="500"><?phpforeach ($users as $key => $value){        echo "<tr valign="top">\n";        echo "<td>".$key ."</td>\n";        echo "<td>".$value ." <small><a href="#">follow</a></small></td>\n";        echo "</tr>\n";}?></table><?php}else{?><p><b>There are no users in the system!</b></p><?php}?></body></html>8
复制代码

可以看到,这里取决于之前选择的链接,接纳两种分歧的举措 — follow_user()unfollow_user()。然后,设置一条动静,并将用户重定向回 index.php 页面。用户回到 index.php 页面后,不但可以看到本人的动静,还可以看到他们跟随的用户比来添加的动静。或,假如之前选择 unfollow 链接,那末谁人用户的动静将从列表中消逝。稍后需求在 index.php 中添加这点代码。如今,将 follow_user()unfollow_user() 函数添加到 functions.php 中。
关于这两个函数要当心一点。不克不及只是由于用户单击了谁人链接,就自觉地跟随或保持跟随一个用户。起首,需求反省 following 表中是不是存在如许的关系。假如存在,那末可以疏忽恳求(单击 follow 链接时),或承受恳求(单击 unfollow 链接时)。为复杂起见,编写两种情形下都可使用的一个 check_count() 函数,以下面的清单所示。

清单 15. check_count() 函数
  1. <?php$users = show_users();$following = following(跟随
    其他用户 接上去
    可以将更多器材
    添加到 functions.php 文件中。这里需求
    一个 show_users() 函数,该函数可以前往
    体系
    中一切
    用户的一个列表。前面
    将利用
    这个函数填充一个用户列表。 清单 10. show_users() 函数  function show_users(){        $users = array();        $sql = "select id, username from users where status="active" order by username";        $result = mysql_query($sql);        while ($data = mysql_fetch_object($result)){ $users[$data->id] = $data->username;        }        return $users;}4
复制代码

<p>接上去的步调很轻易:在主页上显示以后用户正在跟随的其他用掌握静态网页的制作技术是学习开发网站的先决条件,这一点就讲到这里,因为这篇文章不是教程文章,也就不对技术进行深入的刨析了。
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-2-4 06:26:01 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
小女巫 该用户已被删除
板凳
发表于 2015-2-5 04:21:50 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
深爱那片海 该用户已被删除
地板
发表于 2015-2-9 23:04:21 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
分手快乐 该用户已被删除
5#
发表于 2015-2-26 14:00:37 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
山那边是海 该用户已被删除
6#
发表于 2015-3-8 15:27:47 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
透明 该用户已被删除
7#
发表于 2015-3-16 03:05:20 | 只看该作者
实践是检验自己会不会的真理。
海妖 该用户已被删除
8#
发表于 2015-3-19 07:32:44 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
若天明 该用户已被删除
9#
发表于 2015-3-19 09:49:54 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
蒙在股里 该用户已被删除
10#
发表于 2015-3-21 05:19:56 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
再见西城 该用户已被删除
11#
发表于 2015-3-25 03:12:52 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
不帅 该用户已被删除
12#
发表于 2015-3-25 13:55:32 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
简单生活 该用户已被删除
13#
发表于 2015-3-27 16:19:37 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
再现理想 该用户已被删除
14#
发表于 2015-3-29 23:42:16 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
admin 该用户已被删除
15#
发表于 2015-3-31 05:35:50 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
老尸 该用户已被删除
16#
发表于 2015-4-1 18:10:12 | 只看该作者
当然这种网站的会员费就几十块钱。
飘灵儿 该用户已被删除
17#
发表于 2015-4-1 22:09:51 | 只看该作者
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
变相怪杰 该用户已被删除
18#
发表于 2015-4-15 05:51:00 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
只想知道 该用户已被删除
19#
发表于 2015-4-16 08:10:02 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 01:44

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表