connexion à access

Eléphant du PHP | 130 Messages

31 mars 2008, 09:21

Bonjour,

J'ai installé wampserver, quelqu'un pourrait-il me renseigner quel est la procédure pour ce connecter à access 2000 avec apache/php5 svp ?
J'ai un process mais je ne suis pas sûr quel est bonne.

J'ai essayé avec PDO ça ne fonctionne pas.

Merci.
Le vent souffle où il veut et tu en entends le bruit,
Mais tu ne sais d'où il vient, ni où il va ...

ViPHP
ViPHP | 4039 Messages

31 mars 2008, 09:25

le plus évident, pour accéder à une DB access, est de passer par un lien odbc.

Quel driver pdo as-tu utilisé ?
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 130 Messages

31 mars 2008, 10:05

DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$base
la connexion :
$base='C:/Documents and Settings/monchemin/*.mdb';
$conn = new COM("ADODB.Connection");//Declaration Objet


$conn->open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$base");...
Le vent souffle où il veut et tu en entends le bruit,
Mais tu ne sais d'où il vient, ni où il va ...

ViPHP
ViPHP | 4039 Messages

31 mars 2008, 10:40

$base='C:/Documents and Settings/monchemin/*.mdb';
tu mets bien le nom du fichier à la place de l'astérisque, hein ? juste pour être sur..
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 130 Messages

31 mars 2008, 10:50

oui je mets bien le nom exacte
Le vent souffle où il veut et tu en entends le bruit,
Mais tu ne sais d'où il vient, ni où il va ...

ViPHP
ViPHP | 4039 Messages

31 mars 2008, 11:52

Bien bien.. Alors, juste pour la clarté, tu parles de pdo, alors que tu utilises l`interface com, c`est normal ?
Tu as d`abord essayé pdo avant de passer à com ? Et en tant que tel, l`interface com fonctionne ?
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 130 Messages

31 mars 2008, 12:23

oups,

oui en effet, je me suis remis à COM.
Mille excuse Berzemus

Oui ça travail, mais peu de temps après (2 sec) j'ai une alerte qui m'informe qu'"Apache server a rencontrer un problème et doit se fermer", on a le choix sur deux bouton :
soit le bouton Envoyer, soit le bouton ne pas envoyer.

Je ne sais même pas ce qui se passe, pas de message d'erreur rien pour m'informer.

Peux-tu m'expliquer un process avec odbc qui fonctionne bien ou me donner un exemple stp ?
Je vais tenté le coup.

Voici le mien qui pose problème :
if(!$conn = new COM('ADODB.connection')){
exit('impossible de créer la connection ADODB');
}

 $connexion= "DRIVER = {MICROSOFT Access Driver (*.mdb)};
 DBQ = 'C:/wamp/www/SITEWEB/retour/mabase.mdb';
 SERVEUR = localhost;
 UID = root;
 PWD = '';
 UserCommitSync = Yes;
 Threads = 3;
 SafeTransaction = 0;
 PageTimeout = 5;
 Max ScanRows = 8;
 MaxBufferSize = 2048;
 DriverId = 281";
 
 $conn->open($connexion);
Qu'est-ce qui cloche a-t-on avis ?
Le vent souffle où il veut et tu en entends le bruit,
Mais tu ne sais d'où il vient, ni où il va ...

Nounet
Invité n'ayant pas de compte PHPfrance

31 mars 2008, 15:25

Voici la procedure a suivre dans le cas d'une base access:
define('CONNECTION_TO_ACCESS','odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=F:\toto.mdb');
//on se connecte a la base de données access
	$oConnection=new PDO(CONNECTION_TO_ACCESS);
	if ($oConnection instanceof PDO){
	
	$oPDOStatement=$oConnection->query('SELECT prenomProprietaire,idCommande,titreProprietaire,nomProprietaire,immeubleProprietaire,adresseProprietaire,codePostalProprietaire,villeProprietaire,adresseBien,CodePostalBien,immeubleBien,villeBien FROM commande WHERE idCommande='.$_POST['IdCommande']);
				while($aRow=$oPDOStatement->fetch()){
					echo '<dl><dt><label for="TitreProprietaire" >Titre proprietaire :</label></dt><dd><input type="text" id="TitreProprietaire" name="TitreProprietaire" value="'.trim($aRow['titreProprietaire']).'"/></dd></dl>';
					echo '<dl><dt><label for="NomProprietaire" >Nom du propriétaire :</label></dt><dd><input type="text" id="NomProprietaire" name="NomProprietaire" value="'.trim($aRow['nomProprietaire']).'" /></dd></dl>';
					echo '<input type="hidden" id="ImmeubleProprietaire" name="ImmeubleProprietaire" value="'.trim($aRow['immeubleProprietaire']).'"/>';
					echo '<input type="hidden" id="AdresseProprietaire" name="AdresseProprietaire" value="'.trim($aRow['adresseProprietaire']).'"/>';
					echo '<input type="hidden" id="CodePostalProprietaire" name="CodePostalProprietaire" value="'.$aRow['codePostalProprietaire'].'"/>';
					echo '<input type="hidden" id="VilleProprietaire" name="VilleProprietaire" value="'.trim($aRow['villeProprietaire']).'"/>';
					echo '<dl><dt><label for="PrenomProprietaire" >Prènom du propriétaire :</label></dt><dd><input type="text" id="PrenomProprietaire" name="PrenomProprietaire" value="'.trim($aRow['prenomProprietaire']).'"/></dd></dl>';
					echo '<dl><dt><label for="CodePostal" >Code postal du bien :</label></dt><dd><input type="text" id="CodePostalBien" name="CodePostalBien" value="'.$aRow['CodePostalBien'].'"/></dd></dl>';
					echo '<dl><dt><label for="AdresseBien" >Adresse du bien:</label></dt><dd><input type="text" id="AdresseBien" name="AdresseBien" value="'.$aRow['adresseBien'].'"/></dd></dl>';
					echo '<dl><dt><label for="ImmeubleBien" >Immeuble du bien:</label></dt><dd><input type="text" id="ImmeubleBien" name="ImmeubleBien" value="'.$aRow['immeubleBien'].'"/></dd></dl>';
					
				}
	}else{
		throw new Exception('Connection au serveur analysimmo impossible');
	}
	
	//on ferme la connexion avec la base de données
	$oConnection=NULL;
attention,j'ai remarqué que la methode prepare proposé avec pdo ne marche pas sur le sbases access.je n'ai neanmoins pas pu trouver pourquoi donc si vous avez une quelconque explication je suis preneur.

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

31 mars 2008, 15:35

J'ai essayé avec PDO ça ne fonctionne pas.
...

Eléphant du PHP | 130 Messages

01 avr. 2008, 10:59

Merci à tous.
Le vent souffle où il veut et tu en entends le bruit,
Mais tu ne sais d'où il vient, ni où il va ...