开发简易在线双语术语库所需代码

我最近也在一些学校面对从来没有编程基础的翻译专业学生分享译者如何学习编程,往往讲座时间里只能有最多一小时的时间来演示编程入门,我觉得这个在线双语术语库开发的案例非常适合拿来做译者入门教学素材,所以将准备材料和所需代码都放在这里,供参加讲座的听众参考。

本地编程环境搭建

如果你使用的是Windows操作系统,可以安装XAMPP或者PHPStudy,相关教学视频参见以下网址的课时3和课时4:

如果你使用的是Mac操作系统,可以安装MAMP Pro,相关教学视频参见以下网址的课时7:

http://codeslator.edusoho.cn/course/2

大家也许会注意到以上课程是收费课程,不过你们可以先注册上面这个网站,以上视频都是可以免费观看的。

线上编程环境访问

在译者编程入门指南讲座中我一般会带着大家学习一些比较简单的代码,大家最好能够提前打开以下网站:

https://c.runoob.com/compile/1

https://c.runoob.com/compile/9

通过上面两个网站我们可以练习一些简单的PHP和Python基础知识。

所需代码

代码一:基础网页代码

index.php

<!DOCTYPE html>

<html>
<head>
<meta charset="UTF-8">

<title>STITERM</title>
</head>
<body>

</body>
</html>

代码二:查询框

index.php

<form action = "result.php" method = "POST">

<table>
<tr>
    <td>
        <input type = "text" name = "term" placeholder = "检索词" />
    </td>

    <td>
        <button type = "submit">搜索</button>
    </td>
</tr>
</table>

</form>

代码三:获取检索词

result.php

<?php
    $term = $_POST["term"];
?>

代码四:创建数据库

CREATE DATABASE fmprc 
DEFAULT CHARACTER SET utf8 
DEFAULT COLLATE utf8_general_ci;

代码五:创建数据表

CREATE TABLE `tm` 
( 
    `ID` INT(5) NOT NULL AUTO_INCREMENT , 
    `zh_CN` VARCHAR(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL , 
    `en_US` VARCHAR(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL , 
    PRIMARY KEY (`ID`) 
) 
ENGINE = InnoDB 
CHARSET=utf8 
COLLATE utf8_general_ci;

代码六:连接服务器

<?php
$dbhost = "localhost"; //数据库所在主机地址
$dbuser = "root"; //登录服务器所用的服务器用户名
$dbpass = "root"; //登录服务器所用的用户名密码

$conn = mysqli_connect($dbhost,$dbuser,$dbpass);

if(!$conn)
{
   echo "服务器连接失败:".mysqli_connect_error();
}

?>

代码七:选择数据库

<?php
mysqli_select_db($conn,"fmprc");
mysqli_query($conn,"set names 'utf8'");
?>

代码八:获取检索结果

<?php

$term = $_POST["term"];

$sql = "SELECT * FROM tm WHERE zh_CN LIKE '%$term%' OR en_US LIKE '%$term%'";

$getterm = mysqli_query($conn,$sql);

if(!$getterm)
{
    echo "无法获取术语,请检查问题!";
}
else{

    while($row = mysqli_fetch_array($getterm,MYSQLI_ASSOC))
    {
        echo $row["zh_CN"];
        echo $row["en_US"];
    }
}
?>

在《译者编程入门指南》一书的第四章,我详细介绍了如何开发简易的在线双语术语库: