maxx12: ODBC zugriff via PHP

Hallo zusammen,

ich hänge bei dem problem mit php auf eine Progress DB via ODBC-Verbindung zuzugreifen.

Der Zugriff funktioniert schon, jedoch es wird mir immer nur 1 datensatz ausgegeben. welchen fehler habe ich in der while schleife?

<html>  
<?php  
   $conn=odbc_connect('***','***','***');  
if (!$conn)  
        {	exit("Connection Failed: " . $conn);  
        }  
  
        $sql="SELECT * FROM S_Artikel where S_Artikel.Firma = '10' and S_Artikel.Artikelgruppe = '9000'";  
        $rs=odbc_exec($conn,$sql);  
        while(odbc_fetch_row($rs))  
{  
   $name=odbc_result($rs,"Artikel");  
   echo " $name ";  
}  
  
  
  
?>  
</html>

Bitte um Hilfe.
Danke und lg. Max

  1. Hallo,

    vielleicht gibt dein select nur einen Datensatz zurück? Gib in der Whileschleife doch mal echo $i++; zurück, damit du sicher bist, dass es wirklich nur ein Datensatz ist. Bzw. gibt es doch bestimmt auch eine Count-Funktion. Teste doch erstmal mit "Select * from tabel where 1", also einem allgemeinen Statement.

    Gruß

    jobo

    1. Hallo,

      vielleicht gibt dein select nur einen Datensatz zurück? Gib in der Whileschleife doch mal echo $i++; zurück, damit du sicher bist, dass es wirklich nur ein Datensatz ist. Bzw. gibt es doch bestimmt auch eine Count-Funktion. Teste doch erstmal mit "Select * from tabel where 1", also einem allgemeinen Statement.

      Gruß

      jobo

      Ich habe direkt in progress die abfrage gemacht und es kommen mehr datensätze zurück. bin mir auch zu 1000% sicher das es mehrere datensätze bei der abfrage gibt.

      habe es auch schon mit anderen abragen versucht, ich bekomme immer nur einen datensatz.

      1. Hallo,

        habe es auch schon mit anderen abragen versucht, ich bekomme immer nur einen datensatz.

        Na dann lass doch mal den Zähler laufen.

        Gruß

        jobo

  2. Hallo zusammen,

    ich hänge bei dem problem mit php auf eine Progress DB via ODBC-Verbindung zuzugreifen.

    Der Zugriff funktioniert schon, jedoch es wird mir immer nur 1 datensatz ausgegeben. welchen fehler habe ich in der while schleife?

    <?php

    $conn=odbc_connect('','','***');
    if (!$conn)
            { exit("Connection Failed: " . $conn);
            }

    $sql="SELECT * FROM S_Artikel where S_Artikel.Firma = '10' and S_Artikel.Artikelgruppe = '9000'";

    //du hast dir diese Abfrage per echo ausgeben lassen und es getestet oder wie

    echo $sql; //diese Ausgabe testen
    $i=0;
    $rs=mysql_query($sql,$conn) or die('Mysql Fehler: $sql,  '.mysql_error());
     while($datenarray = mysql_fetch_array($rs, MYSQL_ASSOC)){
     {
    $i++;
      echo $datenarray['selectstatement']."<--".$i."<br>"; //hier kommt der Name des sql statements rein (artikel, ect.)
     }

    ?>

    Probiers mal aus  
      
    Gruß Jonny F.
    
    1. Hallo Johnny,

      ich hänge bei dem problem mit php auf eine Progress DB via ODBC-Verbindung zuzugreifen.

      $rs=mysql_query($sql,$conn) or die('Mysql Fehler: $sql,  '.mysql_error());
      while($datenarray = mysql_fetch_array($rs, MYSQL_ASSOC)){

      mysql-Funktionen sind nicht besonders hilfreich, wenn es nicht um MySQL geht.

      Freundliche Grüße

      Vinzenz