J'ai téléchargé adodb il y a quelques jours et je voulais utiliser adodb pour me connecter à la base de données Access. Plus tard, j'ai pu me connecter, mais je n'ai pas pu mettre à jour ou insérer des enregistrements. Je ne sais pas pourquoi personne n'a répondu à ma question problématique. jusqu'à présent, j'ai donc abandonné adodb. , en utilisant le propre ODBC de PHP, mais c'est très peu pratique à utiliser, j'ai donc écrit les fonctions suivantes, qui n'ont pas été encapsulées dans les classes, j'espère que cela pourra aider les amis qui ont le même problème.
<?php
/*
*@classe d'accès
* insérer, mettre à jour, supprimer un enregistrement
*version 1.0
*date 2005.6
* puissance de Samsun Manzalo (34n Zhu Bajie)
* www.knowsky.com
*/
//====================================
// insérer un enregistrement
//Insérer un enregistrement
//====================================
fonction insRd($table,$champ){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$tmpA = exploser(',',$field);
$ins = '';
pour($i=0;$i<count($tmpA);$i++){
$ins.= "'".$_POST[$tmpA[$i]]."',";
}
$ins = substr($ins,0,-1);
$sql = "INSÉRER DANS ".$table." ("".$champ.") VALEURS (".$ins.")";
//écho $sql;sortie;
$query = @odbc_do($connid,$sql);
}
//====================================
//obtient un détail d'enregistrement
// Récupère les informations détaillées de l'enregistrement actuel
//====================================
fonction getInfo($table,$field,$id,$colnum){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$sql = "select * from ".$table." où ".$field."=".$id;
$query = @odbc_do($connid,$sql);
si(odbc_fetch_row($query)){
pour($i=0;$i<$colnum;$i++){
$info[$i] = odbc_result($query,$i+1);
}
}
renvoie $info ;
}
//====================================
//obtenir la liste des enregistrements
// Récupère la liste des enregistrements
//====================================
function getList($table,$field,$colnum,$condition,$sort="ordre par identifiant desc"){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$sql = "select * from ".$table." ".$condition." ".$sort;
$query = @odbc_do($connid,$sql);
//écho $sql."<br>";
$je = 0 ;
tandis que(odbc_fetch_row($query)){
$rdList[$i] = getInfo($table,$field,odbc_result($query,1),$colnum);
$i++;
}
renvoie $rdList ;
}
//====================================
//obtenir la condition de la liste d'enregistrements
// Récupère la liste des enregistrements
//====================================
function getFieldList($table,$field,$fieldnum,$condition="",$sort=""){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$sql = "sélectionnez ".$field." dans ".$table." ".$condition." ".$sort;
$query = @odbc_do($connid,$sql);
//écho $sql."<br>";
$je = 0 ;
tandis que(odbc_fetch_row($query)){
pour($j=0;$j<$numérochamp;$j++){
$info[$j] = odbc_result($query,$j+1);
}
$rdList[$i] = $info;
$i++;
}
renvoie $rdList ;
}
//====================================
//mettre à jour l'enregistrement
//Mettre à jour l'enregistrement
//====================================
fonction updateInfo($table,$field,$id,$set){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$sql = "update ".$table." set ".$set." où ".$field."=".$id;
$query = @odbc_do($connid,$sql);
}
//====================================
// suppression d'enregistrement
// Supprimer l'enregistrement
//====================================
fonction delRd($table,$field,$id){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$sql = "supprimer de ".$table." où ".$field."=".$id;
$query = @odbc_do($connid,$sql);
}
//====================================
// enregistrement supprimer chat
// Supprimer l'enregistrement (condition)
//====================================
fonction delOrRd($table,$condition){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$sql = "supprimer de ".$table." où ".$condition;
$query = @odbc_do($connid,$sql);
}
//====================================
//compte d'enregistrement
// Récupère le nombre d'enregistrements
//====================================
fonction countRd($table,$condition=""){
$connstr = "DRIVER=Pilote Microsoft Access (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) ou die ("Erreur de connexion à la base de données !");
$sql = "select count(*) as num from ".$table." ".$condition;
$query = @odbc_do($connid,$sql);
odbc_fetch_row($query);
$num = odbc_result($query,1);
renvoie num$ ;
}
?>