Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/12/2006, 11h24   #1
Invité de passage
 
Inscription : novembre 2006
Messages : 23
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 23
Points : 4
Points : 4
Par défaut [SQL] Définition odbc texte

Bonjour,

J'essaye de bien définir la connection odbc pour accéder à mon fichier texte.
J'exécute mon code par étapes pour voir où est mon erreur.

Mon test de connexion (avec mes commentaires) se déroule en plusieurs étapes:

1- Recherche du fichier texte:

Test de connexion au fichier texte<br>

Code :
1
2
  $chemin=realpath(".\Coordonnees.txt");
  echo "Chemin: $chemin";
=> Le chemin est affiché donc le fichier est bien trouvé. J'ai le message suivant:

Test de connexion au fichier texte
Chemin: C:\Program Files\ZazouMiniWebServer\Apache\ZMWS\_web.zmwsc\GoogleMap\Coordonnees.txt

2- Préparation et affichage de la chaîne ODBC:

Voici la chaîne que je prépare:

Code :
1
2
  $odbc="Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=$chemin;";
  echo $odbc;
et voici ce qu'il m'affiche:

Citation:
Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\Program Files\ZazouMiniWebServer\Apache\ZMWS\_web.zmwsc\GoogleMap\Coordonnees.txt;
3-Test de communication avec l'odbc texte:

Voici mon code de test:

Code :
1
2
3
4
5
6
7
  $connexion = odbc_connect($odbc,"","");
  if (!$connexion) {
    // Échec de la connexion
    echo "La connexion au fichier texte a échoué, ";
    echo "vérifiez que la connection à l'ODBC texte fonctionne";
    die;
  }
Le message suivant m'indique que le serveur a bien compris que j'utilise le pilote ODBC texte mais que le chemin n'est pas compris. Pourquoi? Voici le message obtenu pour cette dernière partie:

Citation:
Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][Pilote ODBC Texte] '(Inconnu)' n'est pas un chemin d'accès valide. Assurez-vous que le nom du chemin d'accès est correct et qu'une connexion est établie avec le serveur sur lequel réside le fichier., SQL state S1009 in SQLConnect in C:\Program Files\ZazouMiniWebServer\Apache\ZMWS\_web.zmwsc\GoogleMap\test_googleMap.php on line 7
La connexion au fichier texte a échoué, vérifiez que la connection à l'ODBC texte fonctionne

Merci par avance pour vos commentaires qui me permettraient d'avancer.

Arnaud
arnaud_matard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 15h29   #2
Invité de passage
 
Inscription : novembre 2006
Messages : 23
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 23
Points : 4
Points : 4
Par défaut Voici la solution

Voici la solution.

Arnaud

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Test de connexion au fichier texte<br>
<?
  $adresse="Coordonnees.txt";
  echo "Adresse:$adresse";?></p><?
  $chemin=realpath($adresse);
  $chemin2="C:\Program Files\ZazouMiniWebServer\Apache\ZMWS\_web.zmwsc\GoogleMap";
  echo "Chemin: $chemin";?></p><?
  echo "Chemin: $chemin2";?></p><?
  $odbc="Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=$chemin2;Extensions=asc,csv,tab,txt;Persist Security Info=False";
  echo $odbc;?></p><?
  $connexion = odbc_connect($odbc,"","");
  if (!$connexion) {
    // Échec de la connexion
    echo "La connexion au fichier texte a échoué, ";
    echo "vérifiez que la connection à l'ODBC texte fonctionne";
    die;
  }
  echo "Connection: $connexion";
  $liste_tables = odbc_tables($connexion);
  if (!$liste_tables) {
    // Échec de la lecture des tables
    echo "La connexion aux tables a échoué, ";
    echo "vérifiez que la connection à l'ODBC texte fonctionne";
    die;
  }
 
   $tables = array();
   while (odbc_fetch_row($liste_tables)){
     if(odbc_result($liste_tables,"TABLE_TYPE")=="TABLE")
       echo"<br>".odbc_result($liste_tables,"TABLE_NAME");
 
   }
 
 
  $result=odbc_do($connexion,"SELECT * FROM Coordonnees.txt");
  if (!$result) {
    // Échec de la lecture de la table
    echo "La lecture de la table a échoué, ";
    echo "vérifiez la syntaxe de votre SQL";
    die;
  }
 
 
?>
arnaud_matard est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h14.


 
 
 
 
Partenaires

Hébergement Web