PHP Zugriff auf DB2 Datenbank

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP Zugriff auf DB2 Datenbank

    Hallo Forum,

    ich versuche gerade eine PHP Applikation mit einer DB2 Datenbank zu realisieren. Die Connection ist auch schon geglückt - und zwar so:
    PHP-Code:
    $dsn "datenbank";
    $user "username";
    $upasswd "passwort";
            
    $conn  =  odbc_connect($dsn,  $user,$upasswd  );
            echo  
    "conn:  $conn";
            if  (
    $conn  <=  0)  {
                  echo  
    "Error  in  connection<BR>";
                  exit;
                  }
            else  {
                  echo  
    "<P>Connection  successful\n";
                  }; 
    Leider will es mir aber nicht gelingen einen Datensatz aus einer existenten Tabelle zu bekommen. Habe es mit DB2 - als auch ODBC - Befehlen unter PHP versucht :
    PHP-Code:
    $sql  "SELECT EVENT_ID FROM ek_events";
    echo 
    "<br>" $sql "<br>";
    $stmt odbc_prepare($conn$sql);
    $result odbc_execute($stmt$sql);
    if(
    $result)
    {
          echo 
    "RESULT";
          while (
    $row odbc_fetch_array($result))
         {
             echo 
    "DB Inhalt";
             
    printf ("%-5d %-16s %-32s %10s\n"$row[0], $row[1], $row[2], $row[3]);
         }

    Kann mir hier jemand einen Tipp geben, es gibt leider sehr wenig Beispiele im Web und ich kenn mich mit DB2 überhaupt nicht aus. Allerdings stehe ich stark unter Zeitdruck und bin daher für jede Hilfe Dankbar. Mit den Beschreibungen auf PHP.net bin ich nicht viel schlauer geworden.

    VIelen Dank schon Vorab und Gruß
    Tolwin

  • #2
    geht es um ibm db2?
    dann wärst du ja mit http://de.php.net/manual/de/function.db2-exec.php ff. gut beraten, oder?

    Kommentar


    • #3
      Eigendlich sollte es doch so funktionieren...
      Aber Du solltest auch dazu schreiben, was genau nicht funktioniert.

      Du solltest zum Beispiel: odbc_error() und odbc_errormsg() verwenden, um mögliche Abfragefehler zu untermauern.

      Und vielleicht verwendest Du statt odbc_execute und odbc_prepare
      lieber odbc_exec(). Dort benötigst Du kein prepare.

      Also sowas hier:
      Code:
      $dsn = "datenbank";
      $user = "username";
      $upasswd = "passwort";
              $conn  =  odbc_connect($dsn,  $user,$upasswd  );
              echo  "conn:  $conn";
              if  ($conn  <=  0)  {
                    echo  "Error  in  connection<BR>";
                    exit;
                    }
              else  {
                    echo  "<P>Connection  successful\n";
                    };
      
      
      $sql  = "SELECT EVENT_ID FROM ek_events";
      $result=odbc_exec($conn, $sql);
      print  odbc_error()." : ".odbc_errormsg();
      
      if($result)
      {
            echo "RESULT";
            while ($row = odbc_fetch_array($result))
           {
               print  odbc_error()." : ".odbc_errormsg();
               echo "DB Inhalt";
               printf ("%-5d %-16s %-32s %10s\n", $row[0], $row[1], $row[2], $row[3]);
           }
      }

      Dazu kannst du die Möglichkeit überlegen, zu schauen, ob das Array überhaupt gefüllt ist.

      Code:
      $dsn = "datenbank";
      $user = "username";
      $upasswd = "passwort";
              $conn  =  odbc_connect($dsn,  $user,$upasswd  );
              echo  "conn:  $conn";
              if  ($conn  <=  0)  {
                    echo  "Error  in  connection<BR>";
                    exit;
                    }
              else  {
                    echo  "<P>Connection  successful\n";
                    };
      
      
      $sql  = "SELECT EVENT_ID FROM ek_events";
      $result=odbc_exec($conn, $sql);
      print  odbc_error()." : ".odbc_errormsg();
      
      
      if($result)
      {
            while ($row = odbc_fetch_array($result))
           {
           print_r($row);
           }
      }
      Die meiste Unwissenheit könnte besiegt werden. Wir eignen uns nur deshalb keine Kenntnisse an, weil wir sie nicht wünschen.

      Kommentar


      • #4
        Super, vielen Dank - mit odbc_exec funktioniert es!

        Kommentar


        • #5
          @Yooda
          php-Tags für PHP-Code...ansonsten ist lesen echt anstrengend -.-

          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
          Wie man Fragen richtig stellt

          Kommentar


          • #6
            Ja, ich hab es auch erst zu spät bemerkt. Zukünftige Besserung gelobt
            Die meiste Unwissenheit könnte besiegt werden. Wir eignen uns nur deshalb keine Kenntnisse an, weil wir sie nicht wünschen.

            Kommentar

            Lädt...
            X