php数据库增删改查?php面向对象连接数据库如何实现增删改
大家好,今天小编来为大家解答php数据库增删改查这个问题,php面向对象连接数据库如何实现增删改很多人还不知道,现在让我们一起来看看吧!
php增删改查带数据库显示添加成功
这个问题比较广泛,需要更多的背景和具体需求才能提供更准确的答案。通常情况下,实现带数据库的增删改查可以遵循以下步骤:
连接数据库:使用 PHP的数据库扩展,如 mysqli或 PDO,连接数据库。
查询数据库:执行 SQL语句,从数据库中查询需要的数据。
增加数据:通过 SQL语句将数据插入到数据库中。
更新数据:使用 SQL语句更新数据库中的数据。
删除数据:使用 SQL语句删除数据库中的数据。
显示结果:将查询结果显示在网页上,通常是使用 HTML和 CSS构建页面,然后使用 PHP代码将数据填充到页面中。
添加成功提示:在添加、更新、删除操作完成后,通过 PHP代码向用户显示操作是否成功的提示信息。
在实现过程中,还需要考虑数据的安全性和可靠性,例如数据的验证和过滤,SQL注入攻击的防范等。
至于如何在添加成功后向用户显示提示信息,通常可以通过 PHP的会话管理机制(如$_SESSION变量)将消息存储起来,然后在页面中使用 PHP代码读取消息并显示给用户。例如:
<?php
session_start();
if(isset($_SESSION['message'])){
echo'<div class="success">'.$_SESSION['message'].'</div>';
unset($_SESSION['message']);
}
?>
<!--表单等其他内容-->
<?php
//执行添加操作
//添加成功后,设置消息
$_SESSION['message']='添加成功';
//跳转到其他页面
header('Location:/path/to/other/page.php');
?>
这样,当用户提交添加数据的表单后,成功添加数据并跳转到其他页面时,会在页面顶部显示“添加成功”的提示信息。
急求一个php连接Access数据库并实现简单增删查改语句的代码块
给你两个我自己写的数据库的操作的class吧
这个是为了同时可以使用access和mysql而做的先弄一个mysql的然后又写一个access的所有的函数一一对应你可以看下绝对原创喔~~
配置文件如下
$config['db']['type']="Mysql";//数据库类型“Mysql”,“Access”
$config['db']['database']="ourcms";//数据库(文件)名
$config['db']['host']="";//数据库主机
$config['db']['username']="7king";//数据库连接用户名
$config['db']['password']="tingting";//数据库连接密码
/*
$config['db']['type']="Access";//数据库类型“Mysql”,“Access”
$config['db']['database']="ourcms.mdb";//数据库(文件)名
$config['db']['host']="";
$config['db']['username']="";
$config['db']['password']="";
<?php
/**
* 2007.04 by zhaohe
*
* php连接access通用类
*
*用法:
*建立new Access类=> set_db设置数据路径=> set_login设置连接数据库的用户名和密码
*=>通过set_conn设置连接=>
*{
get_result获取查询执行结果; get_result_rows获取查询执行列表,一般是select
insert_info插入新的记录 update_info更新记录
}
*
*
*/
class Access{
/**
*类变量定义
*@param$conn mysql连接号
*@param$error错误代号
*@param$username/$password数据库连接用户名和密码
*@param array$err_info错误信息
*
*@param$debuginfo调试信息
*@param$table当前操作数据表
*/
var$conn;
var$error;
var$database;
var$username="";
var$password="";
var$err_info= array(
0=>"没有错误!",
1=>"数据库连接失败!",
2=>"sql执行出错!"
);
var$debuginfo="";
var$table;
/**
*默认构造方法
**/
function Access($arr=null){
if( is_array($arr)){
$this->set_login($arr['host'],$arr['username'],$arr['password']);
$this->set_db($arr['database']);
$this->set_conn();
}
}
/**
*设置数据库文件名
*@param string$dbfile
*
* return void
*/
function set_db($dbfile){
$this->database=$dbfile;
}
/**
*设置连接数据库的用户名和密码
*@param string$user用户名
*@param string$pwd密码
*
*@return void
*/
function set_login($user,$pwd){
$this->username=$user;
$this->password=$pwd;
}
/**
*创建数据库连接
*@param
* return void
*/
function set_conn(){
if($this->conn=odbc_connect("DRIVER=Microsoft Access Driver(*.mdb);DBQ=".realpath($this->database),$this->username,$this->password,SQL_CUR_USE_ODBC))$this->error=0;
else$this->error=1;
}
/**
*设置当前操作的数据表
*@param string$tb
*
*@return void
*/
function set_table($tb){
$this->table=$tb;
}
/**
*返回sql查询结果
*@param string$sql sql语句
*
*@return#id
*/
function get_result($sql){
return odbc_do($this->conn,$sql);
}
/**
*获取查询的结果
*@param string$sql
*
*@return array结果的二维数组
*/
function get_result_rows($sql){
$array= array();
$result=$this->get_result($sql);
while($row= odbc_fetch_array($result))
$array[]=$row;
return$array;
}
/**
*获取部分查询结果
*
*@param Array数组
*@return Array
*/
function get_query_result($cols,$tb=null,$order=null,$limit=null,$start=0){
if( empty($tb))$tb=$this->table;
else$this->table=$tb;
if( is_array($cols))$col="[".implode('],[',$cols)."]";
else$col=$cols;
if( empty($limit))
$sql="select$col from$tb";
else
$sql="select top$limit$col from$tb";;
if( isset($order))$sql.=" order by$order";
return$this->get_result_rows($sql);
}
/**
*执行数据库插入操作
*
*@param$arr values列表,数组索引为数据表字段
*@param$tb操作数据表如果为空则为设置的当前类的操作表
*/
function insert_info($arr,$tb=""){
$cols= array_keys($arr);
$values= array_values($arr);
if(empty($tb))$tb=$this->tb;
/*
foreach($arr as$key=>$value){
$cols[]=$key;
$values[]=$value;
}
*/
$sql="insert into [$tb]([".implode("],[",$cols)."]) values('".implode("','",$values)."')";
//return$sql;
return$this->get_result($sql);
}
/**
*执行数据库更新操作
*
*@param array$arr要更新的字段值数组索引为表字段名
*@param array$con条件数组
*@param string$tb要操作的数据表
*
*/
function update_info($arr,$con,$tb=""){
$cols= array();
$conditions= array();
if(empty($tb))$tb=$this->tb;
foreach($arr as$key=>$value){
$cols[]="[$key]='$value'";
}
foreach($con as$key=>$value){
//检查数据类型
if( is_int($value)|| is_float($value))
$conditions[]="[$key]=$value";
else
$conditions[]="[$key]='$value'";
}
$sql="update [$tb] set".implode(",",$cols)." where".implode(" and",$conditions);
//return$sql;
return$this->get_result($sql);
}
}
?>
mysql的类如下
class Mysql{
/**
* mysql连接执行类,将sql的执行实现数据库无关性
*
*
*
*/
/**
*类变量定义
*@param$conn mysql连接号
*@param$error错误代号
*@param$username/$password数据库连接用户名和密码
*@param array$err_info错误信息
*
*@param$debuginfo调试信息
*@param$table当前操作数据表
*/
var$conn;
var$error;
var$username="";
var$password="";
var$host;
var$database;
var$err_info= array(
0=>"没有错误!",
1=>"数据库连接失败!",
2=>"sql执行出错!"
);
var$debuginfo="";
var$table;
function Mysql($arr=null){
if( is_array($arr)){//var_dump($arr);
$this->set_login($arr['host'],$arr['username'],$arr['password']);
$this->set_db($arr['database']);
$this->set_conn();
if( isset($this->error)&&$this->error!=0) die($this->err_info[$this->error]);
}
}
/**
*设置数据库名
*@param string$database
*
* return void
*/
function set_db($dbfile){
$this->database=$dbfile;
}
/**
*设置连接数据库的用户名和密码
*@param string$user用户名
*@param string$pwd密码
*
*@return void
*/
function set_login($host,$user,$pwd){
$this->host=$host;
$this->username=$user;
$this->password=$pwd;
}
/**
*创建数据库连接
*@param
* return void
*/
function set_conn(){
$this->conn=mysql_connect($this->host,$this->username,$this->password);
if( isset($this->conn)&& mysql_select_db($this->database))
$this->error=0;
else
$this->error=1;
}
/**
*设置当前操作的数据表
*@param string$tb
*
*@return void
*/
function set_table($tb){
$this->table=$tb;
}
/**
*返回sql查询结果
*@param string$sql sql语句
*
*@return#id
*/
function get_result($sql){
return mysql_query($sql,$this->conn);
}
/**
*获取查询的结果
*@param string$sql
*
*@return array结果的二维数组
*/
function get_result_rows($sql){
$array= array();
$result=$this->get_result($sql);
while($row= mysql_fetch_assoc($result))
$array[]=$row;
return$array;
}
/**
*获取部分查询结果
*
*@param Array数组
*@return Array
*/
function get_query_result($cols,$tb=null,$condition,$order=null,$limit=null,$start=0){
if( empty($tb))$tb=$this->table;
else$this->table=$tb;
if( is_array($cols))$col="`".implode('`,`',$cols)."`";
else$col=$cols;
if( isset($limit))
$sql.="select top$limit$col from$tb";
else
$sql="select$col from$tb";
if( isset($condition))$sql.=" where$condition";
if( isset($order))$sql.=" order by$order";
if( isset($limit))$sql.=" limit$start,$limit";
return$this->get_result_rows($sql);
}
/**
*执行数据库插入操作
*
*@param$arr values列表,数组索引为数据表字段
*@param$tb操作数据表如果为空则为设置的当前类的操作表
*/
function insert_info($arr,$tb=""){
$cols= array_keys($arr);
$values= array_values($arr);
if(empty($tb))$tb=$this->table;
/*
foreach($arr as$key=>$value){
$cols[]=$key;
$values[]=$value;
}
*/
$sql="insert into [$tb](`".implode("`,`",$cols)."`) values('".implode("','",$values)."')";
//return$sql;
return$this->get_result($sql);
}
/**
*执行数据库更新操作
*
*@param array$arr要更新的字段值数组索引为表字段名
*@param array$con条件数组
*@param string$tb要操作的数据表
*
*/
function update_info($arr,$con,$tb=""){
$cols= array();
$conditions= array();
if(empty($tb))$tb=$this->table;
if( is_array($arr)){
foreach($arr as$key=>$value){
$cols[]="`$key`='$value'";
}
foreach($con as$key=>$value){
//检查数据类型
if( is_int($value)|| is_float($value))
$conditions[]="`$key`=$value";
else
$conditions[]="`$key`='$value'";
}
$sql="update `$tb` set".implode(",",$cols)." where".implode(" and",$conditions);
}
else
$sql="update `$tb` set$arr where$con";
//return$sql;
return$this->get_result($sql);
}
}
php面向对象连接数据库如何实现增删改
php面向对象连接数据库实现增删改的方法:首先创建Mysql类并定义变量;然后通过构造函数初始化类;接着连接数据库,并自定义插入数据方法;最后使用update和delete方法修改或删除数据即可。
推荐:《PHP视频教程》
PHP(面向对象)连接数据库,实现基本的增删改查
1、创建mysql_class.php文件然后在该文件中创建Mysql类,并定义变量
<?php
class
Mysql{
private
$host;//服务器地址
private
$root;//用户名
private
$password;//密码
private
$database;//数据库名
//后面所提到的各个方法都放在这个类里
//...
}
?>2、通过构造函数初始化类
function
__construct($host,$root,$password,$database){
$this->host
=$host;
$this->root
=$root;
$this->password
=$password;
$this->database
=$database;
$this->connect();
}对于connect()方法,下一步再说
3、创建连接数据库及关闭数据库方法
function
connect(){
$this->conn
= mysql_connect($this->host,$this->root,$this->password) or die("DB
Connnection Error!".mysql_error());
mysql_select_db($this->database,$this->conn);
mysql_query("set
names utf8");
}
function
dbClose(){
mysql_close($this->conn);
}4、对mysql_query()、mysql_fetch_array()、mysql_num_rows()函数进行封装
function
query($sql){
return
mysql_query($sql);
}
function
myArray($result){
return
mysql_fetch_array($result);
}
function
rows($result){
return
mysql_num_rows($result);
}5、自定义查询数据方法
function
select($tableName,$condition){
return
$this->query("SELECT
* FROM$tableName$condition");
}6、自定义插入数据方法
function
insert($tableName,$fields,$value){
$this->query("INSERT
INTO$tableName$fields VALUES$value");
}7、自定义修改数据方法
function
update($tableName,$change,$condition){
$this->query("UPDATE
$tableName SET$change$condition");
}8、自定义删除数据方法
function
delete($tableName,$condition){
$this->query("DELETE
FROM$tableName$condition");
}现在,数据库操作类已经封装好了,下面我们就来看看该怎么使用。
我们用的还是在PHP连接数据库,实现最基本的增删改查(面向过程)一文中所涉及到的数据库及表(表中数据自己添加):
9、那么我们先对数据库操作类进行实例化
$db
= new Mysql("localhost","root","admin","beyondweb_test");实例化可以在mysql_class.php文件中的Mysql类之外进行。
然后我们再创建一个test.php文件,首先把mysql_class.php文件引入
<?php
require("mysql_class.php");
?>然后我们就开始操作吧
10、向表中插入数据
<?php
$insert
=$db->insert("user","(nikename,email)","(#beyondweb#,#beyondwebcn@xx.com#)");//请把#号替换为单引号
$db->dbClose();
?>11、修改表中数据
<?php
$update
=$db->update("user","nikename
=#beyondwebcn#","where
id=#2#");//请把#号替换为单引号
$db->dbClose();
?>12、查询表中数据并输出
<?php
$select
=$db->select("user");
$row
=$db->rows($select);
if($row>=1){
?>
<table
border="1px">
<tr>
<th>id</th>
<th>nikename</th>
<th>email</th>
</tr>
<?php
while($array
=$db->myArray($select)){
echo
"<tr>";
echo
"<td>".$array[#id#]."</td>";//请把#号替换为单引号
echo
"<td>".$array[#nikename#]."</td>";//请把#号替换为单引号
echo
"<td>".$array[#email#]."</td>";//请把#号替换为单引号
echo
"</tr>";
}
?>
</table>
<?php
}else{
echo
"查不到任何数据!";
}
$db->dbClose();
?>13、删除表中数据
<?php
$delete
=$db->delete("user","where
nikename=#beyondweb#");//请把#号替换为单引号
$db->dbClose();
?>
文章到此结束,如果本次分享的php数据库增删改查和php面向对象连接数据库如何实现增删改的问题解决了您的问题,那么我们由衷的感到高兴!