|
| Php, PDO, ODBC et HyperFileSQL. |
| Iniciado por valentin.meriel, 22,jul. 2014 14:33 - 3 respuestas |
| |
| | | |
|
| |
| Publicado el 22,julio 2014 - 14:33 |
Bonjour,
Actuellement en stage pour une formation de développement, je dois travailler avec une base de donnée HyperFileSQL.
Je n'ai aucune connaissance dans les logiciels de PC Soft et je n'ai pas le temps pendant mon stage de me former dessus.
Donc, j'ai un gros souci je vais tenter de tout expliquer en détail.
J'ai une base de donnée existante avec la dernière version du serveur installer sur une machine virtuel pour mes tests, j'ai bien accès à tout via l'interface fourni et je peux faire des requêtes SQL standard et tout marche. Cependant mon but est de créer une Web service en PHP pour la suite de mon projet.
Alors, j'ai installer le drivers ODBC et il m'a l'air correctement configurer et j'utilise un serveur XAMPP pour héberger mon web service.
Mon souci se situe au niveau du code PHP, en effet j'ai trouver plein de topic parlant de PHP et HyperFileSQL, mais à mes yeux ils sont tous très confus et ne m'ont pas vraiment aidé !
Visiblement j'arrive à me connecter à la base (par je ne sais quel miracle puise que je ne comprends pas les paramètre de connexion) mais tout s’arrête là !
Je vais vous montrez le bout de code que j'utilise :
$dsn = "DRIVER={HyperFileSQL};DSN=Base;ANA=C:\BDD\MonProg.wdd;REP=C:\BDD\MCaisseCS;Server Name=localhost;Server Port=4900;"; echo $dsn . "<br/>"; $connexion = odbc_connect($dsn, "admin", "", SQL_CUR_USE_ODBC) OR die(odbc_error());
IF (!$connexion) { echo "Impossible d'établir une connexion" . "<br/>"; } ELSE { echo $connexion ." Connection ok" . "<br/>"; }
print_r (odbc_data_source($connexion, SQL_FETCH_FIRST));
$requete = "SELECT * FROM vendeur"; echo $requete . "<br/>";
$resultat = odbc_exec($connexion, $requete); print $resultat . " ok <br/>";
odbc_result_all($resultat);
Donc lorsque je lance se petit bout de code j’obtiens ça :
DRIVER={HyperFileSQL};DSN=Base;ANA=C:\BDD\MonProg.wdd;REP=C:\BDD\MCaisseCS;Server Name=localhost;Server Port=4900; Resource id #2 Connection ok Array ( [server] => Base [description] => HyperFileSQL ) SELECT * FROM vendeur
Warning: odbc_exec(): in C:\xampp\websrv\Test\index.php on line 40 ok
Warning: odbc_result_all() expects parameter 1 to be resource, boolean given in C:\xampp\websrv\Test\index.php on line 43
Donc je pense que la connexion c'est bien effectuer mais je n'en suis pas sur et lorsque que je lance la requêtes : $resultat = odbc_exec($connexion, $requete); odbc_exec me renvoi "FALSE" sans plus de cérémonie et je n'ai pas de code d'erreur ou autre information pour m'aider.
La configuration à l'air bonne : DRIVER={HyperFileSQL};DSN=Base;ANA=C:\BDD\MonProg.wdd;REP=C:\BDD\MCaisseCS;Server Name=localhost;Server Port=4900; , DSN étant le nom que j'ai donné à la connexion dans le driver ODBC, les chemins vers la base et le fichier wdd aussi. Me manque t'il quelque chose ? Dans le HFSQL Control Center la base porte un autre nom.
Aussi je voudrais savoir si il est possible de gérer tout ça en utilisent une approche PDO.
Dans l'attente d'une réponse éclairer, je vous remercie. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 13 mensajes |
|
| Publicado el 22,julio 2014 - 17:02 |
| Il faudra déjà vérifier dans l'onglet connexion du centre de contrôle si ta connexion passe bien |
| |
| |
| | | |
|
| | |
| |
| Publicado el 22,julio 2014 - 18:28 |
Ah oui ça c'est sans aucun problème.
D'ailleurs je viens de trouver le problème; la base est "caser" mais fonctionne pour l’outil qui l'utilise !!!!
Donc j'ai créer une seconde base vide, j'ai copier les fichier (qui corresponde à des tables je pense) vers la nouvelle base. J'ai simplifier le code PHP et j'ai aussi trouver pour PDO (mauvaise configuration du php.ini), se qui donne :
En PDO : $conn = new PDO("odbc:Test","admin","admin");
Et en "normal" : $connexion = odbc_connect("Test", "admin", "admin") or die(odbc_error()); |
| |
| |
| | | |
|
| | |
| |
| Publicado el 13,noviembre 2019 - 13:31 |
La solution c'est de developper des webservices en windev et de partages vos base de donnée en format json!

|
| |
| |
| | | |
|
| | | | |
| | |
|