目录
  • 1.摘要:
  • 2.连接本地数据库的核心逻辑:
  • 小结:

1.摘要:

随着全球化进程的加速和英语教育的普及,英语词汇的积累成为了英语学习的重要一环。然而,传统的单词记忆方法效率低下,且缺乏科学的复习机制。因此,开发一款基于数据库的背单词小程序,以提高单词记忆效率和学习体验,具有重要的现实意义和应用价值。
国外在单词记忆软件和工具的开发方面起步较早,已经形成了较为成熟的产业链和技术体系。目前,市场上存在着多款功能强大、用户体验良好的背单词软件。近年来,国内也涌现出了一批背单词软件,如扇贝单词、百词斩等。这些软件在功能设计、用户体验等方面都有了显著提升,但仍存在一些不足,如复习机制不够科学、个性化推荐不够精准等。
本系统旨在开发一款基于数据库的背单词小程序,以满足用户对高效、科学、个性化的单词记忆需求。具体需求包括:支持多种单词记忆方法、提供科学的复习机制、实现个性化推荐功能、保障用户数据安全等。本系统客户端负责与用户进行交互,服务器端负责数据存储和处理。客户端设计注重用户体验和交互性,服务器端设计注重数据安全和性能优化。技术栈方面,我们将采用前端技术(WXML、WXSS、JavaScript)、后端技术(PHP)以及数据库技术(MySQL)来实现系统的各项功能。
系统功能模块设计部分详细描述了系统的主要功能和模块,为后续的实现提供了清晰的蓝图。在实验方案设计部分,文章明确了实验所需的条件,包括设备与环境、用户群体和实验周期,为实验的顺利进行提供了保障。
在总结与展望部分,文章首先回顾了项目的主要成果和体会,包括技术应用、用户反馈以及遇到的挑战与解决方案。接着,文章对系统的未来发展进行了展望,提出了功能扩展、用户体验优化、智能化升级、社区建设以及跨平台发展等规划,旨在不断提升系统的性能和用户体验。

2.连接本地数据库的核心逻辑:

JavaScript 部分负责处理用户的搜索请求,通过调用 wx.request 方法向服务器(后端)发起一个 GET 请求,请求中包含了用户输入的单词。服务器端的 PHP 脚本接收这个请求,连接到 MySQL 数据库,执行一个 SQL 查询来查找与给定单词匹配的记录。如果找到了匹配的记录,它会将这些记录(如单词的定义、首次出现的上下文、翻译等)封装成一个数组或对象,并通过 JSON 格式返回给小程序。小程序在收到响应后,使用 this.setData 方法更新页面的数据,将单词的定义、相关翻译等信息展示给用户。

js代码:

search: function (word) {
      this.setData({
         content: word
      })
      var that = this;

      // 向服务器发起网络请求
      wx.request({
         url: this.data.baseUrl + 'getDefData.php',
         data: {
            word: word
         },
         // 成功回调函数
         success: res => {
            // 将获取结果更新到页面上
            this.setData({
               definition: res.data.result.def
            })
            this.setData({
               defen: [{
                  first: res.data.result.first1,
                  translation: res.data.result.translation1
               }, {
                  first: res.data.result.first2,
                  translation: res.data.result.translation2
               }, {
                  first: res.data.result.first3,
                  translation: res.data.result.translation3
               }]
            })
            this.setData({
               bottomline: "加油,万事开头难"
            })
         },
         // 失败回调函数
         fail: err => {
            console.log(err)
         }
      })

      wx.setStorage({
         key: 'first_login',
         data: false,
      })

   },
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.

php代码:

<?php
//数据库配置信息
$servername = "localhost"; //主机名
$username = "root";  //用户名
$password = "111";  //密码
$dbname = "word_dict"; //数据库名称
 
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 

//获取单词
$word = $_GET['word'];
//SQL查询语句
$sql = "select * from words where word like '".$word."'";
//查询结果
$result = $conn->query($sql);

//如果查到了结果
if ($result->num_rows > 0) {
	$msg ['error_code']=0;
    // 输出数据
    while($row = $result->fetch_assoc()) {
		$msg ['result'] = $row;
    }
} else {
	$msg['error_code']=1;
	$msg['result']='没有查到';
}
//关闭数据库连接
$conn->close();
//把获取到的信息发给客户端
echo json_encode($msg);
?>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.

数据库展示:

背单词小程序课设(论文 + 代码)_笔记

小结:

参考和修改自GitHub小程序小鸡单词,将单词查阅改为了apche服务器和php后端。