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 :

Connexion oracle via PHP


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Par défaut Connexion oracle via PHP
    Bonjour à tous,
    Je souhaite me connecté à Oracle via PHP pour récupérer des données d'une base oracle. J'ai essayé plusieurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $connexion = ora_logon("mabase@service","motdepasse");
    ou ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $connect = ocilogon("login","mdp","chaine_hote");
    et dans les deux cas j'ai le même message d'erreur :
    Fatal error: Call to undefined function: ocilogon() in c:\program files\easyphp1-8\www\test.php on line 825

    J'aurai donc voulu savoir si cette erreur était du au fait que php ne comprennes pas les fonctions ocilogon et ora_logon ou si j'ai mal renseigné les différents champs. A votre avis ?

  2. #2
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call to undefined function: ocilogon()
    C'est clairement que php ne connait pas les fonctions.
    Vérifie avec un phpinfo() que le module oracle est bien installé, et si ce n'est pas le cas (ce qui est plus que probable), il faudra le faire.

    --
    Rakken

  3. #3
    Membre éclairé Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Par défaut
    et je fais ca comment ?

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 666
    Par défaut
    Citation Envoyé par griese
    et je fais ca comment ?
    donne nous plus de détails sur le serveur : quel est le système d'exploitation ? qui à installé PHP ? c'est pour une utilisation professionnelle ou personnelle ?

  5. #5
    Membre éclairé Avatar de griese
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    646
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juin 2006
    Messages : 646
    Par défaut
    C'est pour une utilisation professionelle, l'installation a été réalisé par les admins de la boite, c'est sous Linux, une red hat il me semble. Voila les infos

  6. #6
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut
    Soit la table f_xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    f_xml : 
     ID NOT NULL NUMBER(21)
     CONTENT CLOB
    Voici un code qui permet d'aller interogger la table. Pense a modifier le $db, en mettant l'ip du serveur d'Oracle et le bon SID.

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
    <head>
      <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    </head>
    <body>
     
    <?php
     
    $db = '192.168.0.1/oraclesid';
     
     
    $c1 = oci_connect("dev", "dev", $db, 'utf8');
     
    function execute($conn, $sql)
    {
      $stmt = oci_parse($conn, $sql);
      oci_execute($stmt, OCI_DEFAULT);
      echo " - $sql <br />\n";
    }
     
    function commit($conn)
    {
      oci_commit($conn);
      echo "Committed<br />\n";
    }
     
    function rollback($conn)
    {
      oci_rollback($conn);
      echo $conn . "Rollback<br />\n<br />\n";
    }
     
    function select_data($conn, $sql)
    {
      $stmt = oci_parse($conn, $sql);
      //oci_bind_by_name($stmt, ":empno", $empno, 32);
      oci_execute($stmt, OCI_DEFAULT);
      echo "<br />\n----selecting<br />\n";
      echo ("<pre>");
      while (oci_fetch($stmt)) {
       echo "  [" . oci_result($stmt, 1) . "] ----- ";
       //echo "  [" . oci_result($stmt, 2) . "]<br />\n";
       $mavar = oci_result($stmt, 2);
     
       $test = $mavar->read($mavar->size());
       echo ("\n\n\n");
       echo ($test);
     
     
      }
      echo ("</pre>");
      echo "----done<br />\n<br />\n";
    }
     
    echo "Variable d'environement : " . getenv("NLS_LANG") . "<br />\n<br />\n";
     
    $sql = "SELECT * FROM f_xml";
    select_data($c1, $sql);
     
     
    commit($c1);
    //echo '</pre>';
    ?>
    </body>
    Je me sert de ce code pour faire des tests, il n'est pas propre du tout et nécéssitera remaniement avant d'être intégré dans quoique ce soit d'un peu sérieux. Mais il a l'avantage d'aller lire le contenu d'un CLOB ^_^

    --
    Rakken

Discussions similaires

  1. [Oracle] Import d'Excel vers Oracle via PHP
    Par gogolak dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/05/2011, 15h22
  2. [Oracle] connexion Oracle via un formulaire
    Par CYCLOPE91440 dans le forum PHP & Base de données
    Réponses: 16
    Dernier message: 11/12/2006, 22h50
  3. Méthode d'accès à Oracle via PHP
    Par nicocolt dans le forum Oracle
    Réponses: 1
    Dernier message: 19/10/2006, 15h57
  4. [Oracle] Connexion à Oracle via adodb
    Par mikabail dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 18/07/2006, 15h12
  5. CONNEXION ORACLE VIA PERL
    Par bouda27 dans le forum Oracle
    Réponses: 1
    Dernier message: 07/04/2006, 17h06

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