Problem mit SQL Abfrage

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

  • Problem mit SQL Abfrage

    Hallo
    Ich frage in meinem Scripte eine View einer Datenbank ab und mein Problem ist, dass von meinem Select nur ein Teil der Daten ausgegeben wird. In der Datenbank funktioniert aber die View wie erwartet. Es werden alle Daten zusammen gesammelt und in einer Tabelle ausgegeben.
    Soviel mal allgemein zu meinem Problem nun die Details und Scripte:

    Die Abfrage im Php-Script sowie gleich anschließend die die Ausgabe:

    PHP-Code:
    $sql="SELECT * FROM VW_SERVICE_CALLAllOW WHERE Ticketnr=$ticketnr ";
    foreach(
    $database->query($sql) as $key => $entry){
               if (
    $entry["VAR_SMALLINT_1"]==='1'){
                     echo(
    $entry["VAR_SMALLINT_1"] .  "," $enty["Ticketnr"] . "," .     $entry["AID"] .  "," $enty["SERVICEPORT"] .  "," $enty["SERVICEIP"] .  "," $enty["SERVICEMD"]);
                }else{
                        echo(
    $entry["VAR_SMALLINT_1"] . "<br>Verbindung konnte nicht aufgebaut.");
                };
    }; 
    Per URL wird die Ticketnr eingegeben und und an das Select-Statement als Eingrenzung übergeben.

    Die Ausgabe gibt aber nur das "VAR_SMALLINT_1"- Feld und das "AID"-Feld aus.

    Nun mal das Script der View:
    Code:
    CREATE OR ALTER VIEW VW_SERVICE_CALLALLOW(
        TICKETNR,
        VAR_SMALLINT_1,
        AID,
        SERVICEPORT,
        SERVICEIP,
        SERVICEMD)
    AS
    SELECT  p.id,
            p.VAR_SMALLINT_1,
            m.id,
            m.serviceport,
            m.serviceip,
            m.servicemd
    FROM protokoll p
    Left outer join mitarbeiter m on m.id=p.mid
    ;
    Diese View erzeugt, wenn ich sie mit einem "Select"-Aufruf der Form
    Select * From vw_service_callallow where Ticketnr=52986
    aufrufe die gewünschte Tabelle mit den Einträgen(Siehe ersten Screenshot).

    Wenn ich aber dieses Select wie oben gezeigt per Script übergebe oder aufrufe dann erscheint leider nur folgende Ausgabe:

    1,,32,,,
    So das sollte ausführlich und präzise genug sein. Wieder einmal bedanke ich mich im Vorraus für alle hilfreichen Beiträge.
    Angehängte Dateien

  • #2
    Greif mal mit TICKETNR drauf zu.

    Außerdem empfehle ich dir, die Spalten gezielt zu selektieren.

    Kommentar


    • #3
      Zitat von TobiaZ Beitrag anzeigen
      Greif mal mit TICKETNR drauf zu.

      Außerdem empfehle ich dir, die Spalten gezielt zu selektieren.
      Mit dem Gezielten Zugriss meinst du das Sternchen durch die Felder ersetzen oder?

      Aber ersteres versteh ich nicht. mach ich ja über das Script. Aber im Ibexpert muss ich ja nen wert reingeben.

      Danke für die schnelle antwort.

      Habs im ibexpert per :ticketnr versucht. bringt da keine Änderung. Wird trotzdem vollständig angezeigt.

      Das direkte Abgreifen über :

      PHP-Code:
        $sql="SELECT VAR_SMALLINT_1,Ticketnr,AID,SERVICEPORT,SERVICEIP,SERVICEMD FROM VW_SERVICE_CALLAllOW WHERE Ticketnr=$ticketnr "
      erbringt trotzdem nur:
      1,,32,,,
      Zuletzt geändert von ; 20.06.2012, 13:20.

      Kommentar


      • #4
        Schreib Ticketnr mal GROSS.

        Mit dem Gezielten Zugriss meinst du das Sternchen durch die Felder ersetzen oder?
        Jepp.

        Kommentar


        • #5
          Zitat von TobiaZ Beitrag anzeigen
          Schreib Ticketnr mal GROSS.
          Macht keinen Unterschied. Habs jetzt überall gross geschrieben, wo ich konnte.

          Kommentar


          • #6
            Okay,
            dann debuggen... was gibt print_r() aus?

            welche Datenbank? Welche PHP-Version, etc.?

            Kommentar


            • #7
              Okay, vergiss alles und schreib einfach $enty["Ticketnr"] richtig!

              das Thema wäre uns erspart geblieben, wenn du dein Error-Reporting richtig eingestellt hättest. Das schreiben wir ausdrücklich in den Regeln.

              Kommentar


              • #8
                Zitat von TobiaZ Beitrag anzeigen
                Okay, vergiss alles und schreib einfach $enty["Ticketnr"] richtig!

                das Thema wäre uns erspart geblieben, wenn du dein Error-Reporting richtig eingestellt hättest. Das schreiben wir ausdrücklich in den Regeln.
                Argh... verdammicht. Vielen Dank. Naja wie das so oft ist: irgendwann liest man alles bloss noch "richtig". Was meinst du mich richtig eingestelltem Error-Reporting. Hab nicht zu viel mit Php zu tun. Komm aus der Delphi-Schiene.

                Trotzdem nochmal vielen dank für deine Hilfe.

                Kommentar


                • #9
                  PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr - Ankündigungen im Forum : PHP Developer Forum -> "Ist dein Error-Reporting eingeschaltet?"

                  Kommentar

                  Lädt...
                  X