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
Salut,
bah mon problème est dans le titre mais je le remet.
Je cherche l'équivalent de "mysql_query" avec ODBC svp.
Car je n'y arrive pas du tout.

Merci d'avance et @++.

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
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   ]]
1
Je vais essayer ça merci PHP
0
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
Moi ça me gonfle, quoi que je fasse, rien ne s'affiche, pas d'erreur mais page blanche...
0
Réveiller un post après 5 ans, woot ^^
0

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
bin pourquoi pas, la preuve t'as bien répondu toi!
Si tu pouvais m'aider ça serait mieux quand même!
0
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
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
0
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
0
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
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.
0
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
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.

0
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
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.
0
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
Enfin merci pour cette info, ça me permet au moins de visualiser toutes les tables.
0
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
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 !
0
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
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????
0
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
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)
0