在线小词典(mysql扩展库操作)
- 输入英文查询中文
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扩展库操作)的更多相关文章
- php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库
1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo mysql扩展库与mysql数据库 ...
- PHP mysql 扩展库 操作mysql数据库步骤
一.mysql 扩展库操作mysql数据库步骤如下: 1.获取连接 2.选择数据库 3.设置操作编码 4.发送指令(ddl数据定义/dml数据操作/dql数据查询/dtl数据事务控制) 5.接收返回的 ...
- mysql扩展库操作mysql数据库
环境搭建 启用mysql扩展库,在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 查询数据库 1.建库建表 //建库testcreate database ...
- 通过表名显示数据库中该表的表头和内容(mysql扩展库操作)
编写一个函数,接收一个表名,然后把表的表头和内容显示在网页 <?php function readTab($tableName){ $conn=mysql_connect("local ...
- mysql扩展库应用---在线词典程序范例
1,在mysql中创建数据表words. create table words( id int primary key not null auto_increment, enword varchar( ...
- mysqli扩展库操作mysql数据库
配置环境 配置php.ini文件让php支持mysqli扩展库 extension=php_mysqli.dll 建库建表 详见博客 “mysql扩展库操作mysql数据库” 查询数据库 <?p ...
- PHP基础Mysql扩展库
mysql扩展库操作步骤如下: 1.连接数据库 2.选择数据库 3.设置操作编码 4.发送指令sql,并返回结果集 ddl:数据定义语句 dml:数据操作语句 dql:数据查询 ...
- mysql扩展库-1
启用mysql扩展库 在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 可以通过 phpinfo() 查看当前php支持什么扩展库. 在sql扩展库中创建一 ...
- php数据库编程---mysql扩展库
1, Java有一种方式操作数据库, PHP有三种方式来操作mysql数据库.(1)mysql扩展库:(2)mysqli扩展库:(3)pdo: 2, mysql扩展库和mysql数据库区别 3, my ...
随机推荐
- 谁才是最快的消息队列:ActiveMQ, RabbitMQ[转]
Lately I performed a message queue benchmark, comparing several queuing frameworks (RabbitMQ, Active ...
- FragmentTransactionExtended
https://github.com/DesarrolloAntonio/FragmentTransactionExtended
- 在 Android 的 IM 应用中使用 asmack 库实现用户头像的传输(基于VCard协议)
http://quietmadman.blog.51cto.com/3269500/1359495 Beem http://beem-project.com/projects/beem/reposit ...
- Linux ps aux指令詳解--转
linux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有 ...
- cglib源码分析(三):Class生成策略
cglib中生成类的工作是由AbstractClassGenerator的create方法使用相应的生成策略完成,具体代码如下: private GeneratorStrategy strategy ...
- android自定义View之仿通讯录侧边栏滑动,实现A-Z字母检索
我们的手机通讯录一般都有这样的效果,如下图: OK,这种效果大家都见得多了,基本上所有的android手机通讯录都有这样的效果.那我们今天就来看看这个效果该怎么实现. 一.概述 1.页面功能分析 整体 ...
- udp开发-dtd验证,dom解析
//博主太懒了,并没有提供范例程序 6.基于UDP开发 (1)发送方:socket->准备数据包 DatagramSocket docket = new DatagramSocket(); // ...
- Scala函数字面量
Scala中函数为头等公民,你不仅可以定义一个函数然后调用它,而且你可以写一个未命名的函数字面量,然后可以把它当成一个值传递到其它函数或是赋值给其它变量.下面的例子为一个简单的函数字面量(参考整数字面 ...
- react中的坑
9. 渲染界面的时候让滚动条回到顶部 //渲染界面的时候让滚动条回到顶部 componentDidMount() { window.scrollTo(0,0); } 路由: <Route pat ...
- java 静态方法
在使用java的时候,你会发现,有些对象,需要new ,有些则不需要时,比如Math类 ); 如果你查看源码就会大致的发现,里面的属性和方法都是静态的: public static double si ...