Mysql_query pour odbc
Fermé
Max85
-
9 mai 2003 à 15:08
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 27 mai 2008 à 12:24
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 27 mai 2008 à 12:24
A voir également:
- Mysql_query pour odbc
- Odbc sage - Forum Programmation
- Odbc ado ✓ - Forum Programmation
- L'équivalent de mysql_query avec PDO - Forum Webmastering
- Erreur odbc - Forum C#
- OLEDB ou ODBC??? - Forum Programmation
14 réponses
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
9 mai 2003 à 15:41
9 mai 2003 à 15:41
Bjr MAX85,
Voici un ex très succint ...
<?php
// Variable de connexion
$dsn="mon_dsn";
$usr="username";
$pwd="password";
// Connexion à ODBC
$link=odbc_connect($dsn, $usr,$pwd) or die("Impossible de se connecter via ODBC !");
// Test de requête sur la table ma_table
// qui comporte 2 champs intitulés champ_1 et champ_2
$sql="SELECT * FROM ma_table";
// Exécution
$result=odbc_exec($link,$sql);
if (!$result)
{
echo "ERREUR DANS REQUETE SQL : ".$sql;
exit;
}
// Affichage du résultat
while(odbc_fetch_row($result))
{
echo "champ_1 = ".odbc_result($result,"champ_1");
echo "champ_2 = ".odbc_result($result,"champ_2");
// etc ... normalement on afiche dans un tableau HTML
}
?>
@+
Php
[[ The Truth is Out There ]]
Voici un ex très succint ...
<?php
// Variable de connexion
$dsn="mon_dsn";
$usr="username";
$pwd="password";
// Connexion à ODBC
$link=odbc_connect($dsn, $usr,$pwd) or die("Impossible de se connecter via ODBC !");
// Test de requête sur la table ma_table
// qui comporte 2 champs intitulés champ_1 et champ_2
$sql="SELECT * FROM ma_table";
// Exécution
$result=odbc_exec($link,$sql);
if (!$result)
{
echo "ERREUR DANS REQUETE SQL : ".$sql;
exit;
}
// Affichage du résultat
while(odbc_fetch_row($result))
{
echo "champ_1 = ".odbc_result($result,"champ_1");
echo "champ_2 = ".odbc_result($result,"champ_2");
// etc ... normalement on afiche dans un tableau HTML
}
?>
@+
Php
[[ The Truth is Out There ]]
mouè
Messages postés
31
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
5 juin 2008
21 mai 2008 à 15:44
21 mai 2008 à 15:44
Moi ça me gonfle, quoi que je fasse, rien ne s'affiche, pas d'erreur mais page blanche...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mouè
Messages postés
31
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
5 juin 2008
22 mai 2008 à 09:45
22 mai 2008 à 09:45
bin pourquoi pas, la preuve t'as bien répondu toi!
Si tu pouvais m'aider ça serait mieux quand même!
Si tu pouvais m'aider ça serait mieux quand même!
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
22 mai 2008 à 11:57
22 mai 2008 à 11:57
Bjr
Et comment veux-tu que Max85 puisse te répondre avec aussi peu d'informations que
... rien ne s'affiche, pas d'erreur mais page blanche...
S'il arrive à solutionner ton pb alors là chapeau !
Don't wake up a dead post ! LOL
Et comment veux-tu que Max85 puisse te répondre avec aussi peu d'informations que
... rien ne s'affiche, pas d'erreur mais page blanche...
S'il arrive à solutionner ton pb alors là chapeau !
Don't wake up a dead post ! LOL
J'ai utilisé ça pour passer mon BAC donc ça va être assez tendu, mais j'ai souvenir qu'il fallait passer par un tableau pour afficher les résultats (la page blanche me dit quelque chose).
Rien de sûr :s
Rien de sûr :s
mouè
Messages postés
31
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
5 juin 2008
26 mai 2008 à 10:50
26 mai 2008 à 10:50
Bin en même temps je pense pas que donner mon script change quoi que ce soit étant donné que même les requêtes les plus basiques ne donnent rien.
J'attends plus des pistes au niveau de la config ou quelque chose comme ça.
J'attends plus des pistes au niveau de la config ou quelque chose comme ça.
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
26 mai 2008 à 12:02
26 mai 2008 à 12:02
Bonjour
Si tu utilises une connexion ODBC :
D'abord vérifie que ta connexions ODBC est bien paramètrée dans [Panneau de config][Outils d'administration][Source de données ODBC]
Ton DSN doit se trouver dans Sources de données système si tu veux éviter les ennuies
Ensuite test que tu peux te connecter dessus : si tu as Excel par ex alors lance puis [Données][Données externes][Créer une requête]
Dans la liste sélectionne ta source de données
Décoche "Utiliser l'assistant requête"
Ca doit te lancer MS-Query et t'afficher la liste des tables contenues dans ta base de données.
Si tu utilises une connexion ODBC :
D'abord vérifie que ta connexions ODBC est bien paramètrée dans [Panneau de config][Outils d'administration][Source de données ODBC]
Ton DSN doit se trouver dans Sources de données système si tu veux éviter les ennuies
Ensuite test que tu peux te connecter dessus : si tu as Excel par ex alors lance puis [Données][Données externes][Créer une requête]
Dans la liste sélectionne ta source de données
Décoche "Utiliser l'assistant requête"
Ca doit te lancer MS-Query et t'afficher la liste des tables contenues dans ta base de données.
mouè
Messages postés
31
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
5 juin 2008
26 mai 2008 à 14:23
26 mai 2008 à 14:23
effectivement, en faisant cette opération dans excel je peux visualiser toutes les tables mais j'ai l'impression que le problème reste le même parce que même dans excel, une fois que j'ai selectionné les tables que je voulais, je n'arrive rien à afficher.
Je suis la procédure en selectionnant et en mettant: "importer dans excel" mais ça me met juste le nom des colonnes en haut et pas les données en dessous.
Il y a juste le nom des tables qui apparait en faite.
Je sais vraiment pas comment résoudre ce problème.
Je suis la procédure en selectionnant et en mettant: "importer dans excel" mais ça me met juste le nom des colonnes en haut et pas les données en dessous.
Il y a juste le nom des tables qui apparait en faite.
Je sais vraiment pas comment résoudre ce problème.
mouè
Messages postés
31
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
5 juin 2008
26 mai 2008 à 14:25
26 mai 2008 à 14:25
Enfin merci pour cette info, ça me permet au moins de visualiser toutes les tables.
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
26 mai 2008 à 14:56
26 mai 2008 à 14:56
Peut être que tes tables sont vides ...
Sous MS-Query tu sélectionnes une table (pas une table avec des milliers d'enregistrements !)
Elle doit apparaître avec la liste des champs : sélectionne le 1er champ (qui est un astérisque) et dépacle le sur le volet en dessous dans la petite zone rectangulaire blanche (le curseur change de forme lorsque tu es dessus pour autoriser le drag & drop) Normalement ca va afficher le contenu de la table ou à défaut les noms des champs. Pour voir le contenu clique sur le point d'exclamation
Si rien ne s'affiche c'est que ta table est vide !
Sous MS-Query tu sélectionnes une table (pas une table avec des milliers d'enregistrements !)
Elle doit apparaître avec la liste des champs : sélectionne le 1er champ (qui est un astérisque) et dépacle le sur le volet en dessous dans la petite zone rectangulaire blanche (le curseur change de forme lorsque tu es dessus pour autoriser le drag & drop) Normalement ca va afficher le contenu de la table ou à défaut les noms des champs. Pour voir le contenu clique sur le point d'exclamation
Si rien ne s'affiche c'est que ta table est vide !
mouè
Messages postés
31
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
5 juin 2008
27 mai 2008 à 09:51
27 mai 2008 à 09:51
ouè je pense que certaines tables sont vides, c'est ce qui m'a trompé. Mais il y a des tables où j'arrive pas à accéder aussi, elles sont du genre: G.AR ou G.CL etc. Bref le G est mal interprété je pense à cause du point
Par exemple sur excel quand je selectionne ces tables commençant par G, ça me met "SQL5001-Qualificatif de colonne ou table G non défini".
Parallèlement j'ai un autre souci mais en ce qui concerne une requête load data infile. Je voudrais insérer un fichier texte dans ma BDD mysql à l'aide cette fonction mais je n'ai pas la possibilité de mettre ce fichier dans la "racine" de la BDD. Le fichier txt est donc sur le serveur mais ducou ma requête ne fonctionne pas:
LOAD DATA INFILE "./xxxx.txt'" REPLACE INTO TABLE `xxxx`
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\r\n'(
`cclient` ,
`vrp` ,
`ca` ,
`nom`
)
J'obtiens : #1045 - Accès refusé pour l'utilisateur: 'xxxxxxx@localhost' (mot de passe: OUI)
Cela signifie que je n'ai vraiment pas les droits de file sur le serveur ou est ce que c'est mon chemin qui est pas bon????
Par exemple sur excel quand je selectionne ces tables commençant par G, ça me met "SQL5001-Qualificatif de colonne ou table G non défini".
Parallèlement j'ai un autre souci mais en ce qui concerne une requête load data infile. Je voudrais insérer un fichier texte dans ma BDD mysql à l'aide cette fonction mais je n'ai pas la possibilité de mettre ce fichier dans la "racine" de la BDD. Le fichier txt est donc sur le serveur mais ducou ma requête ne fonctionne pas:
LOAD DATA INFILE "./xxxx.txt'" REPLACE INTO TABLE `xxxx`
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\r\n'(
`cclient` ,
`vrp` ,
`ca` ,
`nom`
)
J'obtiens : #1045 - Accès refusé pour l'utilisateur: 'xxxxxxx@localhost' (mot de passe: OUI)
Cela signifie que je n'ai vraiment pas les droits de file sur le serveur ou est ce que c'est mon chemin qui est pas bon????
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
27 mai 2008 à 12:24
27 mai 2008 à 12:24
Bjr
oui le point dans un nom de table c'est pas très heureux : remplace les par des underscores par ex
Erreur 1045 : ouais t'as pas les droits Connecte toi avec root sous MySQL ou équivalent (ca se configure dans le fichier config.inc.php dans le répertoire phpmyadmin ou lors du login avec les versions récentes)
oui le point dans un nom de table c'est pas très heureux : remplace les par des underscores par ex
Erreur 1045 : ouais t'as pas les droits Connecte toi avec root sous MySQL ou équivalent (ca se configure dans le fichier config.inc.php dans le répertoire phpmyadmin ou lors du login avec les versions récentes)