红旅在线语料库网站 开发笔记

news2025/1/20 18:37:27

logo
桂林红色旅游资源在线语料库网站 (Guilin Red Culture Corpus)提供双语文本检索和分享功能。供英语、翻译相关专业的爱好者,学生和老师学习使用。

该网站是对BiCorpus开源项目的二次开发(已获得原作者授权)。

项目仓库:RedCorpus

原项目仓库:BiCorpus

plaintalks论坛帖子:BiCorpus是什么?

演示视频

缘起

前年,我(被老师推荐去)参与了英语专业那边的一个大创,是做一个红色旅游题材的双语语料库。英语那边的老师说要做一个类似 BiCorpus 的网站。

后来回去研究,确认了自己(太菜)搞不定。无意中发现 BiCorpus 的网站正是韩老师的开源项目,就用邮件询问了韩老师能不能二次开发用于自己的项目,韩老师答应了。于是就开始了基于 BiCorpus 开源项目的二次开发之旅。

网站构思

首先是进行网站构思,因为我的项目用不上 BiCorpus 的所有功能,就选取保留了部分功能,同时新增了许多新功能。所以其实我并不需要搞懂整个项目,只需要研究自己所需要改的部分就行

image|375x500

我在开源项目的基础上,修改并简化了网站的部分布局以使得用户能够更好的进行相关操作;同时改进网站的功能。
原有的开源项目并没有注册功能,用户名和密码需要管理员提供,操作不便。便在此基础上添加了注册功能,同时实现了用户名和密码检测功能(用户名少于6位,用户名与其他已注册用户重复,密码复杂性太低都无法成功注册);
在上传语料的页面时加强了提示;
添加了网页信息页,声明网站的开发者和源代码作者信息。

设计开发(主要功能的修改)

  1. 用户名和密码检测功能(用户名少于6位,用户名与其他已注册用户重复,密码复杂性太低都无法成功注册)
    用正则表达式实现,不满足条件就提示。
    下面为部分代码
    image|690x304

  2. 注册功能(新增普通用户注册页,并新增用户名和密码检测功能)
    其实就是用原项目的 team.php 和 usercreate.php修改得来的。
    新弄了个普通用户注册页面regist.php来注册普通用户
    大致思路是
    先复制 team.php 的新增用户的代码
    去掉regist.php访问的限制(为了让未注册的游客也可以访问)
    修改或去掉usercreate.php新增用户的限制(为了让未注册的游客也可以注册用户)
    从而让任何人都可以访问普通用户注册页,进行注册。

regist.php
删去60多行那边的 if($user_type ==1 ) 判断,**但一定保留其中的内容**
修改90多行那边的用户类型选择,因为普通用户注册界面只能注册普通用户

usercreate.php
修改(其实不太好改)或删去7行左右的整个判断语句的代码
if($user_type != 1)
{
	header("Location: index.php");
}
  1. 上传语料(加强提示)
    这个忘了当时咋弄的了,就不说了。

  2. 信息说明(声明网站的开发者和源代码作者信息)
    这个没啥好说的,就照着原项目的 关于页 的风格写的。
    image|690x421

  3. 手机端
    本来想改的,就是改成和电脑端一致,有注册、登录、下载、用户之类的功能,但是太菜没改出来。

部署网站

(大创项目能报销云服务器和域名费用的,所以没有太多纠结)

经过小组成员的搜索资料与讨论,确定网站的服务器选择了腾讯云的轻量应用服务器。腾讯云是中国最大的几家云服务器厂商之一,其为客户提供性能强大、安全、稳定的云产品。接着,使用phpstudy-linux面板(小皮面板)的服务器运维管理面板来进行网站的部署。最终得以在网络上访问和使用该网站。

因为一开始就跟着老师的教程用的window系统的phpstudy部署项目,所以服务器的Linux系统上就也使用phpstudy-linux面板来部署(当然用宝塔也是可以的)。window和linux部署还是有稍微的不同的,不过可以查阅资料自学来解决,难度不大。


2023.05.10 强烈建议不要使用phpstudy-linux!!!这个软件一年多没更新了,官网和网上资料太少了。我的网站被攻击挖矿了,我都不知道该怎么修复(有没有大佬指导下)。
之前路径依赖就一直用phpstudy,还是改宝塔吧。


image|444x500

之后申请了一个域名,并连接上服务器的IP地址(不得不说域名备份是真的麻烦,搞了我近一个月)。

image|690x295

最后的运行效果

请添加图片描述

功能展示(因为太长了就在这里讲)

1. 用户注册功能

image|690x366

图一 注册页面(正确输入)

image|690x366

图二 注册成功提示

image|690x366

图三 注册页面(未填写完用户信息)

image|690x366

图四 注册失败提示(未填写完用户信息)

image|690x366

图五 注册页面(用户名少于六位)

image|690x366

图六 注册失败提示(用户名少于六位)

image|690x366

图七 注册页面(密码不符合规范)

image|690x366

图八 注册失败提示(密码不符合规范)

2. 用户登录功能

在这里插入图片描述

图九 登录页面(未注册用户名)

image|690x366

图十 登录失败提示(未注册用户名)

image|690x366

图十一 登录页面(用户名或密码错误)

image|690x366

图十二 登录失败提示(用户名或密码错误)

3. 用户上传语料功能

image|690x366

图十三 用户上传语料

image|690x366

图十四 用户上传语料成功提示

image|690x366

图十五 用户查看语料审核状态

4. 管理员审核语料功能

image|690x366

图十六 管理员审核语料

请添加图片描述

图十七 管理员预览语料

image|690x366

图十八 管理员审核发布用户上传的语料

在这里插入图片描述

图十九 首页(语料成功显示)

image|690x366

图二十 管理员撤回用户上传的语料

image|690x366

图二十一 首页(语料被撤回不显示)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/522868.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

小米miui14更新公测

一人内测,全员公测,懂得都懂[滑稽] 必应搜索醉里博客http://202271.xyz?miui 1月份有一部分机型就要公测了,相关用户愿意等的可以再等等。 本篇介绍最简单粗暴的替换法,不管你刷没刷过机都可以用这个方法偷渡MIUI14 ★★★评论…

区间预测 | MATLAB实现QRCNN-GRU卷积门控循环单元分位数回归时间序列区间预测

区间预测 | MATLAB实现QRCNN-GRU卷积门控循环单元分位数回归时间序列区间预测 目录 区间预测 | MATLAB实现QRCNN-GRU卷积门控循环单元分位数回归时间序列区间预测效果一览基本介绍模型描述程序设计参考资料 效果一览 基本介绍 1.Matlab实现基于QRCNN-GRU分位数回归卷积门控循环…

可靠性设计:元器件、零部件、原材料的选择与控制

通常,一个产品由各种基础产品(包括各种元器件、零部件等)构成。由于元器件、零部件的数量、品种众多,所以他们的性能、可靠性、费用等参数对整个系统性能、可靠性、寿命周期费用等的影响极大。 原材料则是各种基础产品的基本功能赖以实现的基础&#xf…

储氢合金/金属氢化物床层有效导热系数的数学模型

最近看到一篇有关“储氢合金/金属氢化物床层有效导热系数的数学模型”的论文,文章DOI:10.1016/j.energy.2023.127085,文章提到的数学物理模型还算好理解一些,特意分享给各位感兴趣的大佬。 一、物理模型简图和假设 文章里&#xf…

数模之Apriori关联算法

一、问题 中医证型的关联规则挖掘 背景: 中医药治疗乳腺癌有着广泛的适应证和独特的优势。从整体出发,调整机体气血、阴阳、脏腑功能的平衡,根据不同的临床证候进行辨证论治。确定“先证而治”的方向:即后续证侯尚未出现之前&am…

前后端分离博客】学习笔记04 --- 文件上传-策略模式

一、思路 我们定义一个接口(就比如接下来要实现的文件上传接口)我们定义所需要实现的策略实现类 A、B、C、D(也就是项目中所使用的四种策略阿里云Oss上传、腾讯云Cos上传、七牛云Kodo上传、本地上传)我们通过策略上下文来调用策略…

基础IO(一)

基础IO(一) 1.文件基础概念2.C语言接口回顾3.系统接口4.文件系统调用5.三个标准6.输出缓冲区 🌟🌟hello,各位读者大大们你们好呀🌟🌟 🚀🚀系列专栏:【Linux的…

股票K线基础知识2

光头光脚阳线 光头光脚阳线形态与特征描述 光头光脚阳线表示股票的最高价与收盘价相同,最低价与开盘价一样。光头光脚阳线上下不带影线,表明从一开盘买方就积极进攻,中间也可能出现买方与卖方的斗争,但买方发挥了最大力量。始终占…

18.JAVA之三大框架Spring、IOC和DI、拦截器、MVC项目、Mybatis持久层、动态SQL、SSM

一、Spring框架 1.1概述 其中最核心的是:IoC控制反转、DI依赖注入、Bean工厂、SpringAOP面向切面编程、事务控制。 Spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。 SpringMVC框架用来接受浏览器的请求和给浏览器做出响应 Mybatis…

C++:设计一个线程安全的队列

文章目录 1. 目的2. 实现?验证!makefileQueue 类的 public 成员单元测试 3. 实现 Queue 类的方案 1. 目的 串行的程序只用到单个 CPU 核心, 希望加速整个程序, 考虑使用多线程加速。典型情况下可以找到生产者、消费者&#xff0c…

基于ESP或ESP8266 单通道Lorawan网关硬件制作

软件代码设计资料下载链接》》 基于 Comresult PCB 的单通道网关 介绍 这是 ESP8266 LoRa 网关的最新版本。基于 ESP8266 mcu 的 LoRa 网关在过去几年里有了很大的发展。您想构建一个小型网关并保持尽可能多的 GPIO 引脚可用,Hallard 板是无与伦比的。另一种解决…

C++多态练习题

文章目录 1.虚函数的调用过程2.虚函数例题例题一例题二例题三例题四例题四 1.虚函数的调用过程 从汇编上面来看: []代表指针解引用操作 1.op指向test对象的首地址(存放vptr),并存放在eax里面; 2.将eax所指之物(虚表…

使用不同的梯度下降法优化算法

本篇将使用以下几个梯度下降算法进行对比: 不使用任何的优化算法(即整批数据集作为一次迭代更新梯度,也叫batch梯度下降,BGD) mini-batch梯度下降法(Mini-batchGD) 使用具有动量的梯度下降算法&…

无标签背景图(负样本)的拼图代码

训练目标检测模型有个很令人头疼的问题,就是有些特征与要训练的特征较为相似的背景区域也被误检出来(作为本应不该检测出来的负样本却被误检出为正样本的FP)。 根据这一问题的解决办法,除了可以对正样本特征较为模糊或者有歧义的样…

Intel SGX学习笔记(2):用数组向Enclave传递5个数实现自增操作

写在前面 1、实现一个简单的Intel SGX的应用:非安全区定义初始化一个数组,数组里面存储5个数,然后向安全区(enclave)传入,在安全区中进行加减乘除,然后返回。 2、Intel SGX开发初学整体思路&a…

代码随想录算法训练营day39 | 62.不同路径,63. 不同路径 II

代码随想录算法训练营day39 | 62.不同路径,63. 不同路径 II 62.不同路径解法一:动态规划解法二:深度搜索(明天补充)解法三:数论(明天补充) 63. 不同路径 II解法一:动态规…

RuoYi-Vue下载与运行

一、源码下载 若依官网:RuoYi 若依官方网站 鼠标放到"源码地址"上,点击"RuoYi-Vue 前端分离版"。 跳转至Gitee页面,点击"克隆/下载",复制HTTPS链接即可。 源码地址为:https://gitee.…

左值引用、右值引用,std::move() 的汇编解释

1:左值引用 引用其实还是指针,但回避了指针这个名字。由编译器完成从地址中取值。以vs2019反汇编: 如图,指针和引用的汇编代码完全一样。但引用在高级语言层面更友好,对人脑。比如可以少写一个 * 号和 -> 。 &…

F280049C实现Simulink调制,以及多个PWM实例之间的同步

文章目录 前言基本概念调制发波载波同步问题 前言 最近作实验碰到了载波不同步的问题,以前也有碰到过这个问题,现在终于解决了,做个记录。 为了以示区分,实例指ePWMx,x1,2,3,4,5,6,7,8;通道指ePWMxA/B&am…

如何使用jmeter进行压测

目录 1.概述 2.测试计划、线程组、取样器 3.调试运行 4.请求默认值 5.流量录制 6.模拟时间间隔 7.压力测试 8.报表 1.概述 一款工具,功能往往是很多的,细枝末节的地方也很多,实际的测试工作中,绝大多数场景会用到的也就是…