CGI接口图书库
目录
一般信息
目标:
开发一个 C++ 程序,该程序实现 CGI 接口 Web 服务器,用于创建和处理图书馆图书数据库。
我的解决方案:
利用 sqlite3 库和 Apache 服务器的功能,我设法用 C++ 编写了自己的 CGI 界面,它提供了图书库的最低功能,能够在数据库中添加、删除、编辑和搜索。
技术
- C++14
- sqlite(版本:3.40.0)
- 中国国际商会(版本:3.2.19#5)
- xampp(实现的 Apache 服务器)
- 要使用 .db 文件,请使用 DB Browser SQLite
网站结构
- MainPage.cpp - index.cgi 文件,包含所有信息并从中执行所有操作的主页。使用 GET 请求通过书名和作者姓名参数过滤图书馆搜索。
URL: hostname/index.cgi
- AddToDB.cpp - AddToDB.cgi 文件,脚本从 POST 请求获取数据(书名、作者、页面等)并将其添加到数据库中。
URL: hostname/cgi-bin/AddToDB.cgi
- DeleteFromDB.cpp - DeleteFromDB.cgi 文件,脚本从 POST 请求获取数据(在本例中为 id),然后按 id 在表中搜索元素并将其删除。
URL: hostname/cgi-bin/DeleteFromDB.cgi
- DropTable.cpp - DropTable.cgi 文件,脚本从 POST 请求获取数据(表名称),然后删除表。
URL: hostname/cgi-bin/DropTable.cgi
- EditDB.cpp - EditDB.cgi 文件,脚本从 POST 请求获取数据(id),然后通过表中的 id 搜索元素并在 HTML FORM 中设置它们的值,然后提供更改此数据的可能性。
URL: hostname/cgi-bin/EditDB.cgi
- SaveEdit.cpp - SaveEdit.cgi 文件,脚本获取数据(来自 EditDB.cgi 的数据),然后使用来自 EditDB.cgi 的新数据更新表。
URL: hostname/cgi-bin/SaveEdit.cgi
设置
- 下载 xampp 或使用此文件。
- 将 .cpp 文件编译为 .cgi 文件并将其重命名为站点结构中的名称。
- 将所有 .cgi 文件移动到 cgi-bin 文件夹中,如下所示。
- 使用此配置文件来使用 Apache 服务器。
- 通过 xampp 应用程序启动 Apache 服务器。
- 写入您的 URL:localhost
完毕! =)