由mysql数据库基础上的php程序实现单词的查询、删除、更改和查询

时间:2022-12-21 15:27:32

我做了一个php程序,将表单数据添加到数据库,借用mysql扩展库函数实现对mysql数据库的操作,能够实现添加单词、删除单词、更新和查询单词。运行环境是普通的mysql数据库和php、Apache服务器。这个程序非常简单,属于那种一看就懂的程序,不过还是要提醒一句,像那个数据库和数据表肯定事先要存在!本文用的数据库是test,数据表示test数据库下的表名为danci的数据表,一共有三个属性:id danci dt 分别是int、char、timestamp类型。直接贴代码:

用户看到的界面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>www.codeke.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="keywords" content="php video,javascript" />
<meta http-equiv="description" content="php php php hp php" />
<style type="text/css">
<!--
span { margin:1px 5px;}
-->
</style>
</head>
<form action="pwd.php" method="post">
<table cellpadding="0" cellspacing="0" border="1px" cols="5" width="300">
<tr><td align="center" colspan="2">列表</td><td colspan="2" align="center">名称</td></tr>
<tr><td align="center" valign="bottom" height="20px" rowspan="2" colspan="3">输入单词</td>
<td colspan="2" rowspan="2" valign="middle" height="20px" align="right">
<input size="26" type="text" name="danci" /></td></tr>
<tr></tr>
<tr id="thanks" style="display:none"><td colspan="5"><span>输入旧单词</span><span><input size="26" type="text" name="jiudanci" value="" /></span></td></tr>
<tr></tr>
<tr><td align="center" valign="bottom" height="20px" colspan="3" >选择操作类型</td>
<td valign="middle" height="20px" align="right">
<select name="select" id="opt" onchange="javascript:change();">
<option value="1" selected="selected">添加</option>
<option value="2">删除</option>
<option value="3">更改</option>
<option value="4">查询</option>
</select>
</td>
</tr>
<script type="text/javascript">
window.onload=change;
function change(){
var temp = document.getElementById("opt").value;
if(temp==3){
document.getElementById("thanks").style.display="table-row";
}else{
document.getElementById("thanks").style.display="none";
}
}
</script>
<tr><td colspan="2"><input type="reset" /></td><td align="center" colspan="2"><input type="submit" value="submit" /></td></tr>
</table>
</form>

处理表单数据的php文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>www.codeke.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!--meta http-equiv="refresh" content="3;url=access.htm" /-->
</head>
<?php
require_once 'def.class.php'; //这个文件用于数据库操作
$danci=$_POST['danci'];
$jiudanci=$_POST['jiudanci'];
$choice=$_POST['select']; $danci=strtoupper($danci); //将单词统一转化成大写的
$jiudanci=strtoupper($jiudanci);
$sqlQue=new SqlDiy("like","admin");
$sqlQue->setDanci($danci);
$sqlQue->setJiudanci($jiudanci);
switch($choice){
case 1:$sqlQue->setOper("insert");break;
case 2:$sqlQue->setOper("delete");break;
case 3:$sqlQue->setOper("update");break;
case 4:$sqlQue->setOper("select");break;
}
if($danci==$jiudanci&&$choice==3){
echo "新单词和旧单词一样,无需更新"; }
if($danci==""||($jiudanci==""&&$choice==3)){
echo "输入为空";
return ;
} $sqlQue->connSql(); ?>

封装了连接数据库的类php文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>www.codeke.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<?php //header("content-type:text/html;charset=utf-8");
class SqlDiy{
private $time;
private $pwd;
private $danci;
private $user;
private $jiudanci;
private $oper;
function __construct($user,$pwd){
$this->user=$user;
$this->pwd=$pwd;
$this->timeWorkErr();
}
function timeWorkErr(){
$this->time=time();
date_default_timezone_set('PRC');
}
function connSql(){ $conn=mysql_connect("localhost",$this->user,$this->pwd);
if(!$conn){
echo mysql_error().error_log(mysql_error.date("m月d日 H:i:s",$this->time)."\r\n",3,"c:/error.txt");
}
mysql_select_db("test",$conn) or error_log(mysql_error.date("m月d日 H:i:s",$this->time)."\r\n",3,"c:/error.txt");
mysql_query("set names utf8");
switch($this->oper){
case "select":$query="select * from `danci` where danci='$this->danci' limit=0,1";break; //一般不要用*,需要哪个字段就选择哪个字段
case "delete":$query="delete from `danci` where danci='$this->danci'";break;
case "insert":$query="insert into `danci`(danci)values('$this->danci')";break;
case "update":$query="update `danci` set `danci`='$this->danci' where `danci`='$this->jiudanci'";break;
}
//$query="update user set name='lily' where name='lily'";
mysql_query("select * from `danci` where danci='$this->danci'",$conn);
if(mysql_affected_rows($conn)>0&&$this->oper=="insert"){
echo "<br />单词库中已经有该单词,无需添加";
return ;
}
if(mysql_affected_rows($conn)<1&&$this->oper=="select"){
echo "<br />单词库里没有该单词"; //针对查询操作
return ;
}
if(mysql_affected_rows($conn)<1&&$this->oper=="delete"){
echo "<br />无法删除一个没有的单词"; //针对删除操作
return ;
}
$res=mysql_query($query,$conn);
if(mysql_affected_rows($conn)<1){
echo "<br />连接数据库有误$this->jiudanci--$this->danci";
error_log(mysql_error().date("m月d日 H:i:s",$this->time)."\r\n",3,"c:/error.txt");
}
else {
if($this->oper=="select"){
while($rows=mysql_fetch_object($res)){
echo "<br />".$rows->id."--".$rows->danci."--".$rows->dt;
}
mysql_free_result($res);
}
if($this->oper=="insert"){
echo "<br />插入单词成功";
}
if($this->oper=="delete"){
echo "<br />删除单词成功";
}
if($this->oper=="update"){
echo "<br />更新单词成功";
}
}
mysql_close($conn);
}
function setJiudanci($i){
$this->jiudanci=$i;
}
function setOper($i){
$this->oper=$i;
}
function setDanci($i){
$this->danci=$i;
} } ?>

建立数据库的函数:

function createDataBase(){ //建立一个数据表
$link=mysql_connect('localhost',"root",$password);//必须用root账号和密码登录
if(!$link){
die('Could not connect: ' . mysql_error());
}
$sql = 'CREATE DATABASE my_db';
if(mysql_query($sql, $link)) {
echo "Database my_db created successfully\n";
} else {
echo 'Error creating database: '.mysql_error()."\n";
} mysql_close($link);
}

删除数据库的函数:

function deleteDataBase(){ //删除一个数据表
$link=mysql_connect('localhost',"root",$password);//必须用root账号和密码登录
if(!$link){
die('Could not connect:'.mysql_error());
}
$sql = 'DROP DATABASE discuz';
if(mysql_query($sql, $link)) {
echo "Database discuz droped successfully\n";
} else {
echo 'Error droping database: '.mysql_error() . "\n";
} mysql_close($link);
}