標題: 網站管理WEBAPP
示範連結:http://52.28.221.30/account/
描述
在這個專案中,我開發了一個網站管理系統,您可以使用它來執行以下操作:
1:註冊、登入、找回密碼。
2:上傳、編輯和刪除您網站的圖片。
3:撰寫、編輯和刪除您網站的訊息,例如:關於我們、我們的服務等。
4:查看並分析您的訪客和使用者統計資料。 5:登入和查詢資料庫的API。
語言包括:PHP、MYSQL (PDO)、Javascript、HTML5 和 CSS。
如何使用:
資料庫:
您需要運行 PHP 8+ 的 XAMPP,將 mysql 使用者名稱和密碼分別更改為 (adminui,#J4dIg0Mn4PiJm0Ck4#),如果您決定使用不同的詳細信息,請更改 phpmyadmin 設定檔中的資料庫詳細資訊。
驗證碼:
在 .env 檔案中建立SECRET_KEY變數並將其指派給您的 google recatcha secrect_key,並在 account.settings.js 中的第 8 行將 site_key 替換為您的。
郵件發送:
在 .env 檔案中建立SMTP_EMAIL和SMTP_PASS變數並將其指派給您自己的詳細資料。
宿主變數:
config.php 中的HOST變數會保存機器的根域,將其替換為與您的匹配。
影像資料夾變數:
config.php 中的Img_folder變數會保存儲存影像的資料夾,將其替換為與您的資料夾。
最大 REG 變數:
config.php 中的MAX_REG變數會儲存您想要允許的使用者(管理者)數量。
訪客統計追蹤
添加require_once('includes/tracking.php');在 login.php 或您選擇的任何其他頁面/文件的頂部,您也可以向 *yourdomain/account/tracking.php 發出請求以記錄存取權。
文件:
配置.php :
該檔案由全域變數和資料庫初始化組成。
函數.php :
該檔案包含所有共用功能,它需要config.php的功能。
索引.php :
這是所有頁面的主要持有者,它根據分別來自url參數action和subAction的action和subAction的值在頁面之間切換,它需要functions.php , includes/actions.php , includes/header的功能.php ,包括/footer.php 。
登入.php :
該檔案保存登入驗證邏輯,它需要functions.php的功能。
註銷.php :
該檔案用於會話銷毀和使用者註銷,它需要functions.php的功能。
恢復器-password.php :
該檔案用於密碼恢復,它需要functions.php的功能。
註冊.php :
該檔案包含註冊身份驗證邏輯,它需要functions.php的功能。
跟踪.php :
該檔案用於透過IP追蹤和記錄訪客的信息,它需要functions.php的功能。
api.handledata.php :
該檔案包含所有資料操作邏輯,例如上傳、編輯和刪除數據,它需要functions.php的功能。
js/account.settings.js :
該檔案包含 javascript 邏輯和功能,例如 google recaptcha、向後端發送 xml 請求、頁面互動、記錄使用者和訪客統計的百分比差異,並且需要include/footer.php的一些功能。
css/account.style.css :
該文件包含該程式的所有樣式。
包括/actions.php :
該檔案包含排列和顯示頁面 html 的函數及其由index.php決定的數據,它需要functions.php的一些功能。
包括/header.php :
該檔案包含顯示整個網站的標題和頭部部分的功能,它需要functions.php和includes/tags.php的一些功能。
包括/tags.php :
該文件包含要添加到整個網站的head部分的所有 html元標記和文件鏈接,這是為了允許各個頁面擁有自己的標題。
包括/footer.php :
該文件包含 html 的所有頁腳部分和整個網站的一些 javascript。
圖片:
該資料夾包含所有上傳的圖像。
小販:
該資料夾包含一些 php 插件,例如 autoload 和 symphony。
Composer.lock 和 composer.json :
這是一個用於安裝套件和插件的 php 套件。
如何使用API
登入
要登錄,首先您必須在網頁上建立帳戶,然後以 json 資料形式提供電子郵件和密碼,例如 {"email":"[email protected]","password":"testing12345"},發送 post 請求造訪http://52.28.221.30/account/api/login.php,您將獲得一個令牌(令牌將在 48 小時後過期)。範例回應 const data = {"success":true,"message":"登入成功","access_token":"ac9e4fd897999fa3419bec77718de76c"}。使用Access Token,您可以執行增刪改查操作。
原油操作
此存取權限僅適用於登入使用者。為此,您必須向 http://52.28.221.30/account/handledata.php 發送Post請求
標頭:要使此操作成功,您必須設定一個帶有存取令牌作為授權的標頭,例如 const HEADERS = {"Content-Type": "application/json","Authorization": "Bearer a3f714e812578a46d97f703ed2a }b59" 。
請求體:主要有兩種操作,圖片和文本,根據操作需要提供json資料。
圖片:
圖像資料:const data = {“data”:[{“old_name”:“example.extension”,“image_name”:“example.extension”,“image_blob”:“包含圖像base64資料”,“xtension”:to如果操作=上傳則指定}],"origin": "api_req", "type": "image", "category": "galleries", "sub_category": "待指定(網站圖像、刺青、繪畫) ", "操作": "待指定(編輯、刪除、上傳)","狀態": "已更改"}
文字:
文字資料: const data = {"data": 待指定,"origin": "api_req","type": "textual","category":"about/services","sub_category": "待指定" ,"操作": "待指定","狀態": "已更改"}
取得數據:要取得數據,請發送Get請求到 http://52.28.221.30/account/api/readdata.php ,指定action 、 sub action 、 page和limit 。
例如請求:http://52.28.221.30/account/api/readdata.php?action=galleries&sub=site-images&page=0&limit=4,
例如回應:{'success':True,'page':'0','limit':'4','total_data_count':12,'data_count':4,'data':[{'img_url':'http ://127.0.0.1/backend/account/images/site-images/favicon-sm.ico'}, {'img_url': 'http://127.0.0.1/backend/account/images/site-images/favicon -lg.ico'}, {'img_url': 'http://127.0.0.1/backend/account/images/site-images/23891556799905703.png'}, {'img_url': 'http://127.0.0.1 /backend/account/images/site-images/youtube-circle-black.png'}]}