• 输入英文查询中文

1、建表

create table words(
  id int primary key auto_increment,
  enWords varchar(32) not null,
  chWords varchar(256) not null
);

2、插入数据

insert into words (enWords,chWords) values ('I','我');
insert into words (enWords,chWords) values ('you','你');
insert into words (enWords,chWords) values ('he','他');

表words如下:

3、程序如下:

mainView.php  主界面

 <!DOCTYPE html>
<html lang="en">
<head>
  <title>在线英汉词典</title>
</head>
<body>
  <h2>查询英文</h2>
  <form action="wordProcess.php" method="post">
    请输入英文:<input type="text" name="enWord"/>
    <input type="submit" value="查询"/>
  </form>
</body>
</html>

wordProcess.php 处理页面

 <?php
//引入操作数据库文件
require_once "mysqlTool.class.php";
//接收用户输入
if(!empty($_POST['enWord'])){
$enWord=$_POST['enWord'];
}else{
echo "输入为空 <a href='mainView.php'>返回重新查询</a>";
die();
}
//查询数据库
$mysqlTool=new MysqlTool();
$sql="select chWords from words where enWords='".$enWord."'limit 0,1";
$res=$mysqlTool->executeDql($sql);
if($row=mysql_fetch_assoc($res)){
echo $enWord."的中文意思是:".$row['chWords'];
echo "<br/><a href='mainView.php'>返回重新查询</a>";
}else{
echo "查不到这个词<br/>";
echo "<a href='mainView.php'>返回重新查询</a>";
}
mysql_free_result($res);
$mysqlTool->mysqlClo();
?>
mysql.class.php 数据库处理页面
 <?php
class MysqlTool{
private $host="localhost";
private $userName="root";
private $pwd="root";
private $dbName="test";
private $conn;
//连接数据库函数,构造函数(与类同名),实例化后自动调用
public function MysqlTool(){
$this->conn=mysql_connect($this->host,$this->userName,$this->pwd);
if(!$this->conn){
die("连接数据库失败".mysql_error());
}
mysql_select_db($this->dbName,$this->conn);
mysql_query("set names utf8",$this->conn);
}
//dql语句,完成select
public function executeDql($sql){
$res=mysql_query($sql,$this->conn) or die("操作失败".mysql_error());
return $res;
}
//dml语句,完成insert,delete,update
public function executeDml($sql){
$res=mysql_query($sql,$this->conn);
if(!$res){
return 0;//0表示操作失败
}else{
if(mysql_affected_rows($this->conn)>0){
return 1;//1表示操作成功
}else{
return 2;//2表示没有行数影响
}
}
}
//关闭数据库
public function mysqlClo(){
mysql_close($this->conn);
}
}
?>

结果如下:

情况1——输入单词存在于数据库中

情况2——没有输入

情况3——输入单词数据库中没有

  • 中英文互查

1、向表中插入新的数据如下:

insert into words (enWords,chWords) values ('your','你们的');

中文->英文的时候,涉及到模糊查询,sql语句中用到like,用法如下:

$sql="select enWords from words where chWords like' %".$chWord."% '";

这样,在输入的中文为“你们”的时候,也能查询到“your”。

2、程序如下:

mainView.php 主界面:加入隐藏表单来区分提交的是哪个表单

 <!DOCTYPE html>
<html lang="en">
<head>
  <title>在线英汉词典</title>
</head>
<body>
  <h2>查询英文</h2>
  <form action="wordProcess.php" method="post">
    <!--加入隐藏表单来区分提交的是哪个表单-->
    <input type="hidden" value="enSearch" name="type"/>
    请输入英文:<input type="text" name="enWord"/>
    <input type="submit" value="查询"/>
  </form>
  <h2>查询中文</h2>
  <form action="wordProcess.php" method="post">
    <!--加入隐藏表单来区分提交的是哪个表单-->
    <input type="hidden" value="chSearch" name="type"/>
    请输入中文:<input type="text" name="chWord"/>
    <input type="submit" value="查询"/>
  </form>
</body>
</html>

wordProcess.php  处理页面

 <?php
//引入操作数据库文件
require_once "mysqlTool.class.php";
//看提交的哪个表单
if(!empty($_POST['type'])){
$type=$_POST['type'];
}else{
echo "输入为空 <a href='mainView.php'>返回重新查询</a>";
die();
}
//接收用户输入,查询英文意思
if($type=="enSearch"){
if(!empty($_POST['enWord'])){
$enWord=$_POST['enWord'];
}else{
echo "输入为空 <a href='mainView.php'>返回重新查询</a>";
die();
}
//查询数据库
$mysqlTool=new MysqlTool();
$sql="select chWords from words where enWords='".$enWord."'";
$res=$mysqlTool->executeDql($sql);
if($row=mysql_fetch_assoc($res)){
echo $enWord."的中文意思是:".$row['chWords'];
echo "<br/><a href='mainView.php'>返回重新查询</a>";
}else{
echo "查不到这个词<br/>";
echo "<a href='mainView.php'>返回重新查询</a>";
}
mysql_free_result($res);
$mysqlTool->mysqlClo();
}
//接收用户输入,查询中文对应英文
else if($type=="chSearch"){
if(!empty($_POST['chWord'])){
$chWord=$_POST['chWord'];
}else{
echo "输入为空 <a href='mainView.php'>返回重新查询</a>";
die();
}
//查询数据库
$mysqlTool=new MysqlTool();
//中文查询用模糊查询
$sql="select enWords from words where chWords like'%".$chWord."%'";
$res=$mysqlTool->executeDql($sql);
if($row=mysql_fetch_assoc($res)){
echo $chWord."对应的英文单词是:".$row['enWords'];
echo "<br/><a href='mainView.php'>返回重新查询</a>";
}else{
echo "查不到这个词<br/>";
echo "<a href='mainView.php'>返回重新查询</a>";
}
mysql_free_result($res);
$mysqlTool->mysqlClo();
}
?>

结果如下:

情况1:英文->中文

情况2:中文->英文(模糊查询)

在线小词典(mysql扩展库操作)的更多相关文章

  1. php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库

    1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo     mysql扩展库与mysql数据库 ...

  2. PHP mysql 扩展库 操作mysql数据库步骤

    一.mysql 扩展库操作mysql数据库步骤如下: 1.获取连接 2.选择数据库 3.设置操作编码 4.发送指令(ddl数据定义/dml数据操作/dql数据查询/dtl数据事务控制) 5.接收返回的 ...

  3. mysql扩展库操作mysql数据库

    环境搭建 启用mysql扩展库,在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 查询数据库 1.建库建表 //建库testcreate database ...

  4. 通过表名显示数据库中该表的表头和内容(mysql扩展库操作)

    编写一个函数,接收一个表名,然后把表的表头和内容显示在网页 <?php function readTab($tableName){ $conn=mysql_connect("local ...

  5. mysql扩展库应用---在线词典程序范例

    1,在mysql中创建数据表words. create table words( id int primary key not null auto_increment, enword varchar( ...

  6. mysqli扩展库操作mysql数据库

    配置环境 配置php.ini文件让php支持mysqli扩展库 extension=php_mysqli.dll 建库建表 详见博客 “mysql扩展库操作mysql数据库” 查询数据库 <?p ...

  7. PHP基础Mysql扩展库

    mysql扩展库操作步骤如下: 1.连接数据库 2.选择数据库 3.设置操作编码 4.发送指令sql,并返回结果集     ddl:数据定义语句     dml:数据操作语句     dql:数据查询 ...

  8. mysql扩展库-1

    启用mysql扩展库 在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 可以通过 phpinfo() 查看当前php支持什么扩展库. 在sql扩展库中创建一 ...

  9. php数据库编程---mysql扩展库

    1, Java有一种方式操作数据库, PHP有三种方式来操作mysql数据库.(1)mysql扩展库:(2)mysqli扩展库:(3)pdo: 2, mysql扩展库和mysql数据库区别 3, my ...

随机推荐

  1. DevExpress GridControl GridView 导出到 Excel 类

    说明: 1>GridView 导出到 Excel (如果分页,只导出当前页数据) 2>GridView 导出到 Excel 3>方法2可以参考DataTable 导出到 Excel ...

  2. Kinect for Windows SDK开发入门(一):开发环境配置

    [译]Kinect for Windows SDK开发入门(一):开发环境配置 前几天无意中看到微软发布了Kinect for windows sensor,进去看了一下Kinect应用的例子,发现K ...

  3. snowflake算法(java版)

     转自:http://www.cnblogs.com/haoxinyue/p/5208136.html 1. 数据库自增长序列或字段 最常见的方式.利用数据库,全数据库唯一. 优点: 1)简单,代码方 ...

  4. hi3531 SDK 编译 uboot, 改动PHY地址, 改动 uboot 參数 .

    一,编译uboot SDK文档写得比較清楚了,写一下须要注意的地方吧. 1. 之前用SDK里和别人给的已经编译好的uboot,使用fastboot工具都刷不到板子上.最后自己用SDK里uboot源代码 ...

  5. mysql选择联合索引还是单索引?索引列应该使用哪一个最有效?深入測试探讨

    先建表 CREATE TABLE `menu_employee` ( `Id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增主键,无实际意义', `emplo ...

  6. svn各种问题总结

    1.out of date 就是说别人已经更新到服务器了,而我修改的还不是服务器最新的. 直接Replace with  资源库的最新内容

  7. 两种JSON数据类型的解析

    son数据格式解析我自己分为两种: 一种是普通的,一种是带有数组形式的: 普通形式的:服务器端返回的json数据格式如下: {"userbean":{"Uid" ...

  8. 组合模式(Composite Pattern)

    组合模式定义:组合模式允许你将对象组合成树形结构来表现"整体/局部"层次结构,组合能让客户以一致的方式处理个别对象以及对象组合. 当涉及到如:菜单,子菜单之类的问题时,会自然而然的 ...

  9. volatile的使用原则

    为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/4352802.html ...

  10. struts2拦截器的实现原理

    拦截器(interceptor)是Struts2最强大的特性之一,也可以说是struts2的核心,拦截器可以让你在Action和result被执行之前或之后进行一些处理.同时,拦截器也可以让你将通用的 ...