1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

FORMATION Connexion à une base de données HFSQL C/S à partir d'un site externe en PHP

Discussion dans 'Webdev' créé par Tomy300, Juil 29, 2018.

  1. Tomy300

    Tomy300 Member

    Inscrit:
    Jan 25, 2018
    Messages:
    38
    J'aime reçus:
    34
    Bonjour à tous,

    J'ai réussi à accéder à une base de données HFSQL C/S à partir d'un site PHP en lecture comme en écriture.

    Je sais qu’il y en a qui maîtrise déjà, d'autres non. Ce poste est pour ceux qui ne trouvent pas comment faire.

    Il faut que le moteur HFSQL soit installé sur votre serveur ainsi qu'une base de données accessible.

    1- Pour commencer il faut s'assurer que vous avez d'installer le driver odbc qui vient avec webdev qui se trouve normalement dans C:\webdev 22\Install\ODBC\WX220PACKODBC.exe et l'installer sur votre serveur.

    2- Ensuite, aller sur votre serveur dans Panneau de configuration\Tous les Panneaux de configuration et choisir "Administrateur de source de données ODBC 32bit"

    3- Ajouter et créer une source de données, logiquement vous devriez voir dans la liste HFSQL

    4- Ajouter vos informations voici une petite capture d’écran de la procédure

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Je crois que l'analyse n'est pas importante dans ce cas-ci, mais je l'ai ajouté quand même.

    Côté PHP maintenant.
    HTML:
    $dsn="DRIVER={HFSQL};Server Name=126.54.32.22;Server Port=4900;Database=LTDB;UID=LTIndustrie34512#;  PWD=VotreMotDePasseIci";

    $conn = odbc_connect($dsn, '', '');

    if($conn===false) {
        print "erreur cnx odbc : " . odbc_errormsg()."\r\n";
    } else {
         //SELECT D'UNE TABLE
        //==============================
        $req = "select * from vd_commandes";
        $rest=odbc_do($conn,$req);

        while (odbc_fetch_into($rest, $rowt)){
    echo $rowt[0]."<

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    >
    ";
        }
    odbc_close($conn);
    }

    //ÉCRITURE DANS LA TABLE
    //=====================
    if($conn===false) {
        print "erreur cnx odbc : " . odbc_errormsg()."\r\n";
    } else {
    $idclient=44; //Client test
    $idUser=139; // tomy300
    $no_bill='345424';
    $ref='RefPHP';
    $idShip=1883;
    $idDest=2397;
    $info='none';
    $val_dec='456';
    $createDate=time();
    $updatedate=time();
    $state='1';
    $term='1';
    $nom_ent_client='test';

    // Dans l'insertion il est important de spécifier les champs au départ, car le moteur hfsql il ne sont pas en ordre de trie.
    $sqlADD = "INSERT INTO vd_commandes (id,idClient,nom_ent_client,idUser,no_bill,ref,idShip,idDest,info,val_dec,state,terme,createDate,updateDate)  VALUES ('$lastid','".$idclient."','".$nom_ent_client."','".$idUser."','".$no_bill."','".$ref."','".$idShip."','".$idDest."','".$info."','".$val_dec."','".$state."','".$term."','".$createDate."','".$updatedate."')";


    $rest=odbc_do($conn,$sqlADD);
    if ($rest){
      echo "done";
    }else{
      print "erreur odbc : " . odbc_errormsg()."\r\n";
    }

    odbc_close($conn);
    }
    J'ai trouvé la partie du code en PHP sur le net et adapté à mes besoins.
    Voilà j'espère que j'ai plus aidé un peu.
    Merci.
     
    Tags:
  2. Man

    Man Active Member

    Inscrit:
    Juil 9, 2018
    Messages:
    290
    J'aime reçus:
    67

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour à tous,

    J'ai réussi à accéder à une base de données HFSQL C/S à partir d'un site PHP en lecture comme en écriture.

    Je sais qu’il y en a qui maîtrise déjà, d'autres non. Ce poste est pour ceux qui ne trouvent pas comment faire.

    Il faut que le moteur HFSQL soit installé sur votre serveur ainsi qu'une base de données accessible.

    1- Pour commencer il faut s'assurer que vous avez d'installer le driver odbc qui vient avec webdev qui se trouve normalement dans C:\webdev 22\Install\ODBC\WX220PACKODBC.exe et l'installer sur votre serveur.

    2- Ensuite, aller sur votre serveur dans Panneau de configuration\Tous les Panneaux de configuration et choisir "Administrateur de source de données ODBC 32bit"

    3- Ajouter et créer une source de données, logiquement vous devriez voir dans la liste HFSQL

    4- Ajouter vos informations voici une petite capture d’écran de la procédure

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Je crois que l'analyse n'est pas importante dans ce cas-ci, mais je l'ai ajouté quand même.

    Côté PHP maintenant.

    $dsn="DRIVER={HFSQL};Server Name=126.54.32.22;Server Port=4900;Database=LTDB;UID=LTIndustrie34512#; PWD=VotreMotDePasseIci";

    $conn = odbc_connect($dsn, '', '');

    if($conn===false) {
    print "erreur cnx odbc : " . odbc_errormsg()."\r\n";
    } else {
    //SELECT D'UNE TABLE
    //==============================
    $req = "select * from vd_commandes";
    $rest=odbc_do($conn,$req);

    while (odbc_fetch_into($rest, $rowt)){
    echo $rowt[0]."<br>";
    }
    odbc_close($conn);
    }

    //ÉCRITURE DANS LA TABLE
    //=====================
    if($conn===false) {
    print "erreur cnx odbc : " . odbc_errormsg()."\r\n";
    } else {
    $idclient=44; //Client test
    $idUser=139; // tomy300
    $no_bill='345424';
    $ref='RefPHP';
    $idShip=1883;
    $idDest=2397;
    $info='none';
    $val_dec='456';
    $createDate=time();
    $updatedate=time();
    $state='1';
    $term='1';
    $nom_ent_client='test';

    // Dans l'insertion il est important de spécifier les champs au départ, car le moteur hfsql il ne sont pas en ordre de trie.
    $sqlADD = "INSERT INTO vd_commandes (id,idClient,nom_ent_client,idUser,no_bill,ref,idShip,idDest,info,val_dec,state,terme,createDate,updateDate) VALUES ('$lastid','".$idclient."','".$nom_ent_client."','".$idUser."','".$no_bill."','".$ref."','".$idShip."','".$idDest."','".$info."','".$val_dec."','".$state."','".$term."','".$createDate."','".$updatedate."')";


    $rest=odbc_do($conn,$sqlADD);
    if ($rest){
    echo "done";
    }else{
    print "erreur odbc : " . odbc_errormsg()."\r\n";
    }

    odbc_close($conn);
    }

    J'ai trouvé la partie du code en PHP sur le net et adapté à mes besoins.
    Voilà j'espère que j'ai plus aidé un peu.
    Merci.
    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    à partir de ton tuto une idée me vient en tête est-ce que je peux aussi avoir accès au serveur HF C/S à partir de Node.js ?
    Si oui quelle est procédure.
    Merci d'avance
     
    Blksize apprécie ceci.
  • suenodesign

    suenodesign Well-Known Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    507
    J'aime reçus:
    732
    Pensez aux performances en vous connectant via ODBC.
     
  • chimmeria

    chimmeria New Member

    Inscrit:
    Nov 30, 2022
    Messages:
    2
    J'aime reçus:
    0
    Bonjour,
    pardonnez-moi de déterrer un vieux sujet.

    J'ai constaté que cette technique fonctionne bien pour les fichiers non protégés par mot de passe comme celui-ci (vu dans le centre de contrôle HFSQL).

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    En revanche, pour ceux qui sont cryptés, et/ou protégés par mot de passe comme celui-ci :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    j'obtiens une erreur odbc : HY090. Comme quoi le fichier n'a pas été trouvé.

    Erreur dans le code SQL de la requête <SQLODBC>. Initialisation de la requête impossible.
    Fichier zonegeo inconnu
    Erreur détectée :
    SELECT * FROM >>>>zonegeo<<<<​

    Auriez-vous une solution ?
    Merci beaucoup !
     
  • Gemini1961

    Gemini1961 Well-Known Member
    MEMBRE WX DUMP TEAM

    Inscrit:
    Jan 2, 2018
    Messages:
    572
    J'aime reçus:
    862
    Bonsoir
    Visiblement la connexion au fichier n'est pas établie ...
    La première chose étant de s'assurer que celle-ci est bien faite (avec le mot de passe d'accès et la clé de cryptage)
    Ensuite de lancer votre requête SQL :)
    Bien cordialement
     
    #5 Gemini1961, Nov 30, 2022
    Dernière édition: Nov 30, 2022
  • chimmeria

    chimmeria New Member

    Inscrit:
    Nov 30, 2022
    Messages:
    2
    J'aime reçus:
    0

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonsoir
    Visiblement la connexion au fichier n'est pas établie ...
    La première chose étant de s'assurer que celle-ci est bien faite (avec le mot de passe d'accès et la clé de cryptage)
    Ensuite de lancer votre requête SQL :)
    Bien cordialement
    Cliquez pour agrandir...
    La connexion est bien faite j'imagine car j'arrive parfaitement à accéder aux fichiers non protégés par mot de passe.
    Je m'interroge surtout sur comment je peux indiquer quel est le mot de passe des fichiers !
    Merci
     
  • Gemini1961

    Gemini1961 Well-Known Member
    MEMBRE WX DUMP TEAM

    Inscrit:
    Jan 2, 2018
    Messages:
    572
    J'aime reçus:
    862
    Bonjour

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Voici un lien qui traite le sujet :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Bien cordialement
     
  • Partager cette page

    Chargement...