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
完畢! =)