IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

PHP IIS, ODBC vers base Progress OpenEdge


Sujet :

PHP & Base de données

  1. #1
    Membre averti Avatar de droliprane
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2005
    Messages : 710
    Points : 444
    Points
    444
    Par défaut PHP IIS, ODBC vers base Progress OpenEdge
    Bonjour à tous,

    j'ai des difficultés pour connecter une plateforme web php en ODBC sur une base progress OpenEdge 10

    j'utilise PHP IIS 1.2 sur un serveur Windows 2008R2

    J'ai installé le module Progress Sql Client Access, et configuré un driver ODBC qui fonctionne (j'obtiens bien "Connection established" dans le module ODBC de windows)

    Maintenant depuis un script PHP, pas moyen d'obtenir une connexion.

    J'ai utilisé le script suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if ($conn_id=odbc_connect("MonDSN","sysprogress","sys", SQL_CUR_USE_ODBC)){
     
    echo "connected to DSN: $dsn";
     
    }
    mais j'obtiens le "Warning: odbc_connect()" et pas de connexion.

    J'ai aussi essayé en activant l'extension PDO_ODBC :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dbh = new PDO("DSN:MonDSN", "sysprogress", "sys");
    mais cette fois j'obtiens "could not find driver".

    Savez-vous si dans le cas d'une install PHP/IIS il faut une dll spéciale pour pouvoir utiliser un odbc externe ?

    Je sais que ma connexion odbc est bien configurée dans windows car je l'utilise depuis un client lourd windev et ça fonctionne.

    Merci pour toute information qui pourra m'aider.

    droliprane
    'Diviser chacune des difficultés en autant de parcelles qu’il se pourrait et qu’il serait requis pour les mieux résoudre', René Descartes

    => Maya GPAO

  2. #2
    Membre averti Avatar de droliprane
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2005
    Messages : 710
    Points : 444
    Points
    444
    Par défaut
    J'ajoute que je viens de tester en installant le driver OpenEdge Client Access 64bits (j'étais en 32bits avant) mais ça ne fonctionne pas non plus. Même erreurs.
    'Diviser chacune des difficultés en autant de parcelles qu’il se pourrait et qu’il serait requis pour les mieux résoudre', René Descartes

    => Maya GPAO

  3. #3
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    salut, je me souviens d'avoir utilisé odbc ya fort longtemps j'avais pas eu de problème particulier.

    Quelles sont tes versions de pilotes?
    Est ce que ta source ODBC fonctionne?
    Quel est le message d'erreur complet?
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  4. #4
    Membre averti Avatar de droliprane
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2005
    Messages : 710
    Points : 444
    Points
    444
    Par défaut
    Salut gene69,

    merci de t'intéresser à mon pb. J'utilise le package Progress Sql Client Access en version 32bits.

    Je sais qu'il existe des possibilité avec un driver qui s'appelle SQL-92, ou via un module DataDirect Connect de chez Progress mais tout ça semble payant...

    Qui plus est, je sais que mon ODBC fonctionne car je l'utilise via mon appli Windev à partir de laquelle j'arrive à interroger la base Progress.

    Le message d'erreur PHP est très variable selon le code que j'utilise, car j'en ai testé plusieurs. En ce moment j'ai ça :

    Warning: odbc_connect(): in D:\BOULOT\__WWW\qad\index.php on line 39
    Connection could not be established to ODBC_QAD
    avec le code suivant :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    $db_host = "192.168.1.222";
    $db_server_name = "QAD_SRV";
    $db_name = "mfgprod";
    $db_user = "sysprogress";
    $db_pwd = "mon_password";
     
    $dns         = "DRIVER={QAD};" .
                    "CommLinks=tcpip(Host=$db_host);" .
    		"ServerName=$db_server_name;".
    		"UserCommitSync=No;".
                    "Threads=3;".
                    "SafeTransactions=0;".
                    "PageTimeout=5;".
                    "MaxScanRows=8;".
                    "MaxBufferSize=2048;".
                    "DriverId=281;".
                    "Option=3;".
                    "DefaultDir=C:/ProgramFiles/CommonFiles/ODBC/DataSources".
                    "DatabaseName=$db_name;" .
                    "uid=$db_user; pwd=$db_pwd";
     
    $conn=odbc_connect('QAD','sysprogress','sys');
    Et l'erreur est sur le odbc_connect évidemment.

    Cordialement,

    droliprane
    'Diviser chacune des difficultés en autant de parcelles qu’il se pourrait et qu’il serait requis pour les mieux résoudre', René Descartes

    => Maya GPAO

  5. #5
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    salut

    à quoi sert la variable $dns ?


    PS: on dit "$dsn" comme data source name.
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

Discussions similaires

  1. [WD17] interroger une base Progress OpenEdge 10
    Par droliprane dans le forum WinDev
    Réponses: 27
    Dernier message: 05/04/2016, 11h08
  2. [Oracle] PHP connexion ODBC vers oracle
    Par enzo68290 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/07/2012, 00h14
  3. Lien ODBC vers base SQL / performances ?
    Par PhRey dans le forum Modélisation
    Réponses: 0
    Dernier message: 04/04/2008, 17h16
  4. lien odbc vers une base oracle
    Par fatati dans le forum Oracle
    Réponses: 1
    Dernier message: 12/01/2007, 10h49
  5. Connexion ODBC à des bases Progress
    Par Blue LC dans le forum XMLRAD
    Réponses: 9
    Dernier message: 01/04/2006, 16h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo