H5+css+js一个简单的图书管理系统

作业 同时被 3 个专栏收录
122 篇文章 0 订阅
15 篇文章 0 订阅
9 篇文章 0 订阅

一个简单的网页图书管理系统,不同的权限登陆显示不同的内容,界面做了一点点的美化


1 登录注册,默认有三个人员信息,可以注册,也可以直接登录(弹窗提示用户,是登录还是注册)


 


2 登录后展示所有列表,包括图书的(编号,书名,作者,出版时间,书的数量),以及借阅按钮,点击按钮可以实现借阅,数量 -1


 


3 提供录入按钮 点击后对图书信息进行录入,录入的时候需要查重,如果已经存在了则只需要累加数量


 


4 添加录入 权限,只有管理员才有权限录入


 


有:函数的封装,数组的使用,对象的封装



<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        .mbody{
            width: 98%;
            height: 96%;
            margin: 0 auto;
            border: 2px solid gray;
            border-radius: 15px;
            box-shadow:10px 10px 5px #888888;
            position: absolute;
            background-image:url("img/bg.png") ;
            background-repeat: no-repeat;
            background-size: cover;
        }
        input{
            width: 80px;
            height: 35px;
            background: #c90c18;
            color: #ffffff;
            border-radius: 5px;
            border: 2px solid #db5e66;
            font-size: 16px;
            cursor: pointer;
            transition: 0.3s;
        }
        input:hover{
            background-color: #02bbff;
            border: 1px solid orange;
            transform: scale(1.08);
        }
    </style>
</head>
<body>
<div class="mbody" id="mbody">
</div>

</body>
<script>
    var userArray=new Array(3);
    var bookArray=new Array(15);
    var isRegist=false;
    var isLogin=false;
    var mbody=document.getElementById("mbody");

    userArray[0]=new Object();
    userArray[0].userName="Admin";
    userArray[0].password="Admin";
    userArray[0].isAdmin=true;
    userArray[1]=new Object();
    userArray[1].userName="user";
    userArray[1].password="user";
    userArray[1].isAdmin=false;
    userArray[2]=new Object();
    userArray[2].userName="TY";
    userArray[2].password="TY";
    userArray[2].isAdmin=true;

    for(var i=0;i<bookArray.length;i++){
        bookArray[i]=new Object();
        bookArray[i].bookId=i+1001;
        bookArray[i].bookName="书"+bookArray[i].bookId;
        bookArray[i].bookAuthor="TY";
        bookArray[i].bookTime="2017-7-29";
        bookArray[i].bookNum=2;
    }
    bookArray[14].bookName="鬼吹灯";
    bookArray[14].bookAuthor="天下霸唱";
    bookArray[14].bookTime="2008-7-1";
    bookArray[14].bookNum=3;
    function creatTable(isAdmin){
        var str;
        var tStr="";
        var adminStr="<input type='button'  value='录入新书' οnclick='adminAdd()'" +
                "style='border: 2px solid red; font-size:18px; cursor: pointer; " +
                "color:white; background-color:hotpink; display:block; margin: 0 auto; " +
                "margin-top: 60px; height:40px; width:100px;'>";
        if(isAdmin){
            tStr+=  "<th>借书</th>"+
                    "<th>录入</th>"+
                    "<th>删除</th>"+
                    "</tr>";
            tStr+=adminStr;
        }
        else{
            tStr+= "<th>借书</th>"+
                    "</tr>";
        }
        for(var i=0;i<bookArray.length;i++){
            if(isAdmin){
                tStr+="<tr  height='35' align='center'>" +
                        "<td>"+bookArray[i].bookId+"</td>"+
                        "<td>"+bookArray[i].bookName+"</td>"+
                        "<td>"+bookArray[i].bookAuthor+"</td>"+
                        "<td>"+bookArray[i].bookTime+"</td>"+
                        "<td>"+bookArray[i].bookNum+"</td>"+
                        "<td><input type='button' value='借书' οnclick='borrow("+i+","+isAdmin+")'/>"+"</td>"+
                        "<td><input type='button' value='录入' οnclick='add(\""+i+"\")'/>"+"</td>"+
                        "<td><input type='button' value='删除' οnclick='del(\""+i+"\")'/>"+"</td>"+
                        "</tr>"
            }else{
                tStr+="<tr  height='35' align='center'>" +
                        "<td>"+bookArray[i].bookId+"</td>"+
                        "<td>"+bookArray[i].bookName+"</td>"+
                        "<td>"+bookArray[i].bookAuthor+"</td>"+
                        "<td>"+bookArray[i].bookTime+"</td>"+
                        "<td>"+bookArray[i].bookNum+"</td>"+
                        "<td><input type='button' value='借书' οnclick='borrow("+i+","+isAdmin+")'/>"+"</td>"+
                        "</tr>"
            }
        }
        str="<table border='0px' width='100%' style='margin: 30px auto'>" +
                "<tr height='45'>" +
                    "<th> 编号 </th>"+
                    "<th> 书名 </th>"+
                    "<th> 作者 </th>"+
                    "<th>发布日期</th>"+
                    "<th>库存数量</th>"+
                tStr+
                "</table>";
        return str;
    }

    function borrow(i,isAdmin){
        if(bookArray[i].bookNum<1){
            alert("借书失败!库存不足。")
        }else{
            bookArray[i].bookNum--;
        }
        mbody.innerHTML=creatTable(isAdmin);
    }

    function add(i){
        bookArray[i].bookNum++;
        mbody.innerHTML=creatTable(true);
    }

    function adminAdd(){
        var isExist=false;
        var j;
        var num=prompt("请输入要录入的书本种类数:")-0||0;
        for(var i=0;i<num;i++){
            var book=new Object();
            book.bookId=prompt("请输入第"+(i+1)+"种书的编号:")-0||-1;
            if(book.bookId==-1){
                alert("第"+(i+1)+"种书的编号格式不正确,请重新输入!");
                i--;
                continue;
            }
            book.bookName=prompt("请输入第"+(i+1)+"种书的书名:")||"无名书";
            book.bookAuthor=prompt("请输入第"+(i+1)+"种书的作者:")||"无名氏";
            book.bookTime=prompt("请输入第"+(i+1)+"种书的发布时间:")||"1970-1-1";
            book.bookNum=prompt("请输入第"+(i+1)+"种书的数量:")-0||1;
            for(j=0;j<bookArray.length;j++){
                if(bookArray[j].bookId==book.bookId){
                    isExist=true;
                    break;
                }
            }
            if(!isExist){
                bookArray.push(book);
            }else{
                bookArray.splice(j,1,book);
            }
            mbody.innerHTML=creatTable(true);
        }
    }

    function del(i){
        bookArray.splice(i,1);
        mbody.innerHTML=creatTable(true);
    }

    function regAlog(isregist,islogin){
        if(isregist){
            var regist=new Object();
            var rname=prompt("请输入用户名:");
            for(var rg=0;rg<userArray.length;rg++){
                if(userArray[rg].userName==rname){
                    rname=prompt("该用户已存在!:");
                    rg=-1;
                }
            }
            regist.userName=rname;
            regist.password=prompt("请输入密码:");
            regist.isAdmin=confirm("是否需要管理员权限?");
            userArray.push(regist);
            alert("注册成功!");
            islogin=true;
            if(islogin){
                mbody.innerHTML=creatTable(regist.isAdmin);
            }
        }
        else{
            var lname=prompt("请输入用户名:");
            var j=0;
            var k=0;
            var lg;
            for(lg=0;lg<userArray.length;lg++){
                if(userArray[lg].userName==lname){
                    var passw=prompt("请输入密码:");
                    if(passw==userArray[lg].password){
                        alert("登陆成功!");
                        islogin=true;
                        break;
                    }else{
                        for(k=0;k<2 && passw!=userArray[lg].password;k++){
                            passw=prompt("密码错误!请重新输入密码:");
                        }
                        if(k>=2){
                            alert("超过次数,请重新登陆!");
                            break;
                        }else if(passw==userArray[lg].password){
                            alert("登陆成功!");
                            islogin=true;
                            break;
                        }
                    }
                }else if(lg==userArray.length-1){
                    lname=prompt("用户名错误,请重新输入:");
                    lg=-1;
                    if(j++>3){
                        alert("超过次数,请重新登陆!");
                        break;
                    }
                }
            }
            if(islogin){
                mbody.innerHTML=creatTable(userArray[lg].isAdmin);
            }
        }
    }

    isRegist=window.confirm("请选择是否注册");
    regAlog(isRegist,isLogin);
    console.log(userArray);
</script>
</html>


运行结果:







  • 8
    点赞
  • 4
    评论
  • 72
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
根据所作需求分析可以得出,图书馆管理系统实施后,达到以下目标。 界面设计友好、美观。 数据存储安全、可靠。 信息分类清晰、准确。 强大查询功能,保证数据查询灵活性。 实现对图书借阅和归还过程全程数据信息跟踪。 提供图书借阅排行榜,为图书馆管理员提供了真实数据信息。 提供灵活、方便权限设置功能,使整个系统管理分工明确。 具有易维护性和易操作性。 操作注意事项 (1)本系统管理员用户名为:51aspx,密码为:51aspx (2)数据库位置:DB_51aspx(Sql2005格式) (3)读者类型不同,可借图书本数也有所区别。 操作流程 (1)用户登录图书馆管理系统后,进入图书馆主界面,如图1.9所示,通过此界面可看到图书借阅排行榜和读者借阅排行榜,通过排行榜可以看出借阅图书名称、图书类型、借阅次数及借阅读者等相关信息。 (2)单击“系统设置”/“图书馆信息”命令,对图书馆信息进行设置操作。 (3)单击“系统设置”/“管理员设置”命令,对管理员信息进行添加、权限设置、浏览及删除操作。 (5)单击“系统设置”/“书架管理”命令,对书架信息进行添加、修改及删除操作。 (6)单击“读者管理”/“读者类型管理”命令,对读者类型信息进行添加、修改及删除操作。 (7)单击“读者管理”/“读者档案管理”命令,对读者信息进行添加、修改、查看及删除操作。 (8)单击“图书管理”/“图书类型管理”命令,对图书类型进行添加、修改及删除操作。 (9)单击“图书管理”/“图书档案管理”命令,对图书信息进行添加、修改及删除操作。 (10)单击“图书借还”/“图书借阅”命令,对图书借阅信息添加操作。 (11)单击“图书借还”/“图书归还”命令,对图书归还信息进行添加操作。 (12)单击“系统查询”/“图书档案查询”命令,对图书档案信息进行查询操作。 (13)单击“系统查询”/“图书借阅查询”命令,对借阅图书信息进行查询操作。 (14)单击“排行榜”/“图书借阅排行榜”命令,对图书借阅信息进行查看操作。 (15)单击“排行榜”/“读者借阅排行榜”命令,对读者借阅信息进行查看操作。 (16)单击“更改口令”按钮,对当前用户密码进行修改操作。 (17)单击“退出系统”按钮,退出当前操作系统。
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值