楊石強 段元梅



摘要:隨著社會經濟體系的高速發展,人們在適應快速生活節奏的同時,愈加注重個人興趣的培養。詩詞能夠提高人們的語言表達、思維和寫作能力。人們在熱愛詩詞的同時也應該有簡便的方法了解格律組成,并輕易執行即興創作。文章設計的系統旨在建成一個以已有詩詞作為內容基礎,可供使用者閱讀學習,集登錄與發布為一體的系統。該系統使用超文本預處理器(Hypertext Preprocessor,PHP)語言為基礎編寫前端代碼,關系型數據庫管理系統(Relational Database Management System,MySQL)作為數據庫存儲數據信息,利用超文本標記語言(Hyper Text Markup Language,HTML)和層疊樣式表(Hyper Text Markup Language,CSS)添加頁面布局,采用腳本語言(JavaScript,JS)編寫功能邏輯。經過測試,文章設計的系統實現了完整的前端架構布局和數據庫的正常調用,并利用網絡環境,結合現實情況實現了轉載傳承及與時俱進。
關鍵詞:PHP;MySQL;JS;詩詞賞析;CSS
中圖分類號:TP311? 文獻標志碼:A
0 引言
時至今日,互聯網作為科技的標志性技術加快了信息社會的推進。互聯網時代最主要的特征是信息的數字化及全球化[1]。社會生活與信息技術聯系緊密。人們在緊張的工作之余,傾向于投入多媒體產品的娛樂[2]。生活中依然有一小部分人堅持對詩歌的熱愛,他們樂于細讀和理解詩詞,而大部分人只是會讀卻不會寫作詩詞。詩詞賞析系統的出現完美地解決了這個問題[3]。詩詞的格式對大部分人而言并不簡單,但人們可以利用互聯網快捷、豐富的特點進行即時了解,在興趣的基礎上,創作屬于自己的詩詞[4]。使用者可在系統中查閱了解不同體裁詩詞的格式,也可從已有的詩詞庫中尋找創作靈感,利用詩詞系統提供的幫助完成創作。
1 分析與設計
1.1 需求分析和總體設計
通過前期調研,筆者對詩詞賞析系統進行了需求分析。該系統需要在開放的硬件體系結構中運行,并能與其他系統順利連接,不會因外部系統的不同而做大量的調試工作。系統還需要運行平穩且具有較好的可維護性。人們能在該詩詞賞析系統中閱讀詩詞、傳承和轉載詩詞,并結合現實創作詩詞。基于上述需求分析,本文設計的系統可實現普通登錄和管理者登錄,是一個以本機為服務器以達到平穩運行效果的系統。該系統需要實現查閱的同時,保留編輯和存儲文檔的功能。系統需要內設一個閱讀排行榜,通過點擊次數為排列值進行排序。普通登錄者可查看系統內所有詩詞數據并管理自己發布的數據,而管理者可刪減所有用戶發布的數據。
1.2 系統的模塊劃分
本文設計的系統可實現前后端數據的交流、數據庫的添加、修改和刪除等操作。系統中的文件相互獨立,單個文件即可構成一個跳轉頁面。頁面架構關系以PHP作為主體,包含HTML和CSS元素,采用JS腳本進行邏輯運算。
詩詞賞析系統可劃分為前端、后端和數據庫管理3大模塊。前端管理模塊包含注冊與登錄、頁面與布局、詩詞詳情與搜索。后端管理模塊包含詩詞信息管理和用戶管理。數據庫管理模塊包含數據錄入、數據修改、數據入庫和校驗信息等。3大模塊的設計如圖1所示。
2 詩詞賞析系統的實現
2.1 數據分析展示
數據分析展示部分負責收集測試數據,分析實際情況,實現前端頁面的內容編輯,包括登錄注冊和數據展示2個部分。
2.1.1 登錄注冊
本文利用Wamper讀取Login.php文件,進入登錄展示頁面。由于登錄區分管理者和普通用戶,當輸入相應的賬號密碼時,系統將根據身份的不同賦予不同的權限。普通用戶只能查看系統信息和修改個人所發布的文字。管理員可執行管理全庫內容,無需自己在數據庫源代碼中修改。該系統利用jQuery驗證用戶名和密碼是否正確,正確即進入系統,錯誤即彈出提示。實現的核心代碼如下:
function login() {
var name = $(":input[name='name']").val();
var pass = $(":input[name='pass']").val();
if (!name) {
alert('請輸入用戶名');
return;
}
if (!pass) {
alert('請輸入密碼');
return;
}
其中,登錄頁面的載入如圖2所示。
本文利用Var賦值用戶名。如果用戶不輸入值而直接點登錄,Alert則會出現提醒彈窗“請輸入用戶名”,從而無法進行下一步操作。只有當用戶框和密碼框全部賦值后,才會對數據庫發送對比核驗,從而檢測數值是否正確。當name和pass核驗通過后,post函數將其提交至后端數據庫,從而獲取登錄者相關信息。若用戶輸入的信息無誤,系統將向主頁面進行跳轉。
2.1.2 數據展示
系統通過讀取相應的文件進行頁面布局和設計,通過和HTML語言協作構建完備網頁并進行相關控制操作。后端根據詩詞所固有的模式設立4個輸入框,即詩詞名、作者、簡介和解析。隨后,系統對輸入的4個內容進行相應的判定,用取反的方式判斷是否有值,并將判斷結果通過彈窗提示。由于每一頁點擊都需要用到相同的數據文件進行連接操作,筆者創建了一個公用文件以實現跳轉,實現的核心代碼如下:
<?php
/*公共文件*/
header("Content-type: text/html; charset=utf-8"); // 設置字符集
date_default_timezone_set("PRC"); // 設置時區
@session_start(); // 開啟session
/*ajax返回函數*/
function output($code=0, $msg='')
{
$errorInfo = array('code' => $code, 'msg' => $msg);
exit(json_encode($errorInfo));
}
?>
系統完成公共文件連接頁碼后,需進行分頁處理、定義條數和判斷頁碼等。本文設計了一個退出登錄操作,當使用者閱讀完成后,點擊退出登錄即返回登錄主頁面。
2.2 數據庫寫入
本文使用MySQL函數庫,服務主機由本地計算機實現,即為localhost主機。本文首先定義了一個Shichi數據庫,用Content列表的結構,定義修改方式于內容之中,同時以此方法存儲用戶修改的數據。然后,筆者在后端再定義索引方式,即小型系統用的主流模板套路,構成一個私人小型系統。當寫入內容到數據庫以后,使用者可以進行檢索。檢索功能如圖3所示。
2.3 調用數據庫
如果系統登錄數據庫成功,則可根據數據庫中定義的各個內容樣式,使用PHP語言進行鏈接,直接調用各個模塊和表,從而達到數據交互或完成庫內數據修改的功能。當數據庫需要寫入新的內容時,系統更新布局好操作指令,點擊創建后直接牽動創建模塊的PHP語言。寫入方式如下:
INSERT INTO -content- (-id-, -uid-, -author-, -title-, -des-, -content-, -views-, -ctime-) VALUES
若使用者再次登錄驗證,則通過JS腳本驗證登錄,并通過PHP鏈接核對并轉存到數據庫中。前后端并未做很規則的區分,文件間相互獨立。因此,本文中各項功能實現方式是直接建立文件鏈接,具備較好的靈活性。
2.4 限制模塊
由于無法確定使用者的具體目的,系統無疑具有高自由度。作為一個可供編輯的系統,為了避免不法分子傳播大量非法信息,首先對編輯的內容篇幅進行限制,并加入審核功能。實際上,普通用戶點擊發布后,編輯內容不會立即上傳,而是將文件存儲到管理者私人賬戶,經過管理者審核通過后再點擊發布。由于實現方法較為單一,普通用戶想要刪除自己發布內容時只能提交刪除申請,由管理者實現相關修改。
3 結語
本文設計的詩詞賞析系統,采用Google的MaterialDesign設計理念,排版方式優美。界面采用古樸風格,將各種題材的詩詞進行分類,其中包含了萬首古詩詞的鑒賞,幾乎每首詩詞都能添加注解。在用戶使用上,系統支持多種方式搜索,有精美的應用目錄圖標和工整的閱讀體驗。系統可提供制作閱讀摘錄書簽,用戶可自行選擇喜歡的詩詞篇章或者詩詞句子制作成書簽,也可切換書簽皮膚,并分享給朋友一起閱讀。
參考文獻
[1]羅璐瑩,李婧妍,丁思文,等.移動端古詩詞學習系統[J].計算機系統應用,2022(5):102-110.
[2]廖書瀧.中小學古詩詞個性化學習系統的設計與實現[D].湘潭:湖南科技大學,2024.
[3]劉祥宇,遲曉健.基于微信的古詩詞移動學習資源設計研究[J].中小學電教,2021(6):74-77.
[4]聶鴻濤.影視聲音鑒賞系統的分析與設計[D].長春:吉林大學,2024.
(編輯 王雪芬)
Design of poetry appreciation system based on PHP
YANG? Shiqiang, DUAN? Yuanmei
(School of Information Engineering, Hunan University of Science and Engineering, Yongzhou 425199, China)
Abstract: With the rapid development of the socio-economic system, people are paying more attention to cultivating personal interests while adapting to the fast-paced lifestyle. Poetry can enhance peoples language expression, thinking, and writing abilities. While people love poetry, they should also have a simple way to understand the composition of rhythm and improvise easily. The system designed in this paper aims to build a system based on the existing poetry content, which can be read and learned by users, and integrates login and publication. The system uses the Hypertext Preprocessor (PHP) language as the foundation to write front-end code, the Relational Database Management System (MySQL) as the database to store data information, and uses Hypertext Markup Language (HTML) and Cascading Style Sheets (CSS) to add page layout, and scripting language (JavaScript, JS) to write functional logic. Finally, after testing, the system designed in this article has achieved a complete front-end architecture layout and normal database calls. It has also utilized the network environment and combined with practical situations to achieve reposting, inheritance, and keeping up with the times.
Key words: PHP; MySQL; JS; Appreciation and analysis of poetry; CSS