• PHP制作留言板


    做基础的留言板功能  需要三张表:

    员工表,留言表,好友表

    首先造一个登入页面:

    <form action="drcl.php" method="post">
        <div>帐号:<input type="text" name="zhang"/></div>
        <div>口令:<input type="text" name="mi"/></div>
    <input type="submit" value="登入"/>
    </form>

    上图:

    然后来写处理页面:

    复制代码
    <?php
    session_start();
    //session存储数据
    
    include ("db.class.php");
    //引用类
    $db = new db();
    //造方法
    $zhang = $_POST["zhang"];
    $mi = $_POST["mi"];
    $sql = "select mi from yuangong WHERE zhang = '{$zhang}'";
    $arr = $db->Query($sql);
    if(!empty($mi)&&$mi = $arr  &&!empty($zhang))
    {
        $_SESSION["zhang"] = $zhang;
        //即将跳转页面之前,把帐号存到session里面
        header("location:zym.php");
    }
    else
    {
        echo "登入失败了";
    }
    ?>
    复制代码

    正常的处理登入的页面只不过把账号存了一下session

    登入上进入主页面

    再来是主页面了:

    复制代码
    <!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">
    <head>
        <title>无标题文档</title>
    </head>
    <body>
    <h1>留言板</h1>
    <div><a href="fbym.php">发布信息</a></div>
    <div><a href="ddrr.php" onclick=" return confirm('注销当前用户?')">注销登入</a></div>
    <table border="1" cellpadding="0" cellspacing="0" width="100%">
        <tr>
            <td>发件人</td>
            <td>收件人</td>
            <td>发布时间</td>
            <td>内容</td>
        </tr>
    复制代码
      <?php
        session_start();
        //存储数据
    
        if(empty($_SESSION["zhang"]))
        {
            header("location:ddrr.php");
            //防止输入网址进入
            exit;
        }
        $zhang = $_SESSION["zhang"];
        include ("../db.class.php");
        $db = new db();
        $sql = "select name from yuangong WHERE zhang = '{$zhang}'";
        $attr = $db->Query($sql);
        //取到登入的name
        echo "<h5>欢迎你:{$attr[0][0]}</h5>";
        //输出登入的name
    
    
        $sql = "select * from liuyan WHERE shou = '{$zhang}' or shou = 'all' ORDER BY times DESC ";
        //条件!!我只看自己或所有人的
        $arr = $db->Query($sql);
                foreach ($arr as $v){
                    $shou = aname($v[2]);
                    $fa = aname($v[1]);
                    //用方法
                echo "<tr>
            <td>{$fa}</td>
            <td>{$shou}</td>
            <td>{$v[3]}</td>
            <td>{$v[4]}</td>
        </tr>";
        }
        //返回姓名
        function aname($zhang)
        {
            global $db;
            //设置全局变量!
        if($zhang == "all")
        {
            //如果接收到的是all,显示:
            return "所有人";
    
        }
        else
            {
                //如果是自己的,根据帐号查name
                $sql = "select name from yuangong WHERE zhang ='{$zhang}' ";
                $arr = $db->Query($sql);
                //二维数组
                return $arr[0][0];
            }
        }
        ?>
    复制代码
    </table>
    
    </body>
    </html>
    复制代码

    查找的条件即是只查自己的好友或者是all的所有人

    还要注意一点便是要把调用的db设为全局变量

     图:

    留言板需要发布信息:

    发布信息页面:

    复制代码
    <!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">
    <head>
        <title>无标题文档</title>
    </head>
    <body>
    <h1>发布信息</h1>
    复制代码
    <?php
    session_start();
    //存储数据
    
    if(empty($_SESSION["zhang"]))
    {
        header("location:ddrr.php");
        //防止输入网址进入
        exit;
    }
    $zhang = $_SESSION["zhang"];
    include ("../db.class.php");
    $db = new db();
    $shaoyou = "select * from firend WHERE me = '{$zhang}'";
    $ahaoyou = $db->Query($shaoyou);
    ?>
    复制代码
    <form action="fbcl.php" method="post">
    <div>&nbsp;接收人:&nbsp;
        <select name="shou">
            <option value="all">所有</option>
    复制代码
     <?php
            foreach ($ahaoyou as $v)
            {
                $name = aname($v[2]);
                echo "<option value='{$v[2]}'>{$name}</option>";
            }
            ?>
    复制代码
        </select></div>
    <br/>
    <div>留言内容:&nbsp;<input type="text" name="lynr"/></div>
    <br/>
    <input type="submit" value="发送"/>
    <input type="reset" value="清空"/>
    </form>
    复制代码
    <?php
    function aname($zhang)
    {
    global $db;
    //设置全局变量!
    if($zhang == "all")
    {
    //如果接收到的是all,显示:
    return "所有人";
    
    }
    else
    {
    //如果是自己的,根据帐号查name
    $sql = "select name from yuangong WHERE zhang ='{$zhang}' ";
    $arr = $db->Query($sql);
    //二维数组
    return $arr[0][0];
    }
    }
    ?>
    复制代码
    <a href="zym.php">查看信息</a>
    <a href="ddrr.php" onclick="return confirm('确定要退出此帐号?')">注销登入</a>
    </body>
    </html>
    复制代码

    最后就是发布信息的处理页面:

    复制代码
    <?php
    session_start();
    $uid = $_SESSION["zhang"];
    
    include("../db.class.php");
    $db = new db();
    
    $jsr = $_POST["shou"];
    $neirong = $_POST["lynr"];
    $sj = date("Y-m-d H:i:s");
    
    $sql = "insert into liuyan values('','{$uid}','{$jsr}','{$sj}','{$neirong}',0)";
    
    if($db->Query($sql,0))
    {
        header("location:zym.php");
    }
    else
    {
        echo "发布失败!";
    }
    复制代码

     图:

    我用小花的账号给小明发一条留言:

    所以 登入小明的帐号

    图:

     没错,他收到了小花的这条留言

  • 相关阅读:
    java基础知识要点总结之几个重要关键字(关于static、this、final、)
    网上大篇幅的坑人的struts2入门案例
    oc4j(oracle container for j2EE)使用笔记一
    清空数据库中某个表的两种操作
    MyEclipse下将应用部署到tomcat严重: Error initializing endpoint java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind
    jsp----错误页设置
    jsp设置MIME类型
    jsp输出显示表格
    jsp输出方式
    Linux操作
  • 原文地址:https://www.cnblogs.com/jc535201285/p/6677764.html
Copyright © 2020-2023  润新知