odbc und IBM DB2 / Error-Handling

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

  • odbc und IBM DB2 / Error-Handling

    Sorry, hab schon wieder was....

    Ich bin an meiner ersten Arbeit, bei der ich das Vergnügen haben nicht mit mySql sondern mit einer IBM DB2 zu arbeiten.

    Nun habe ich ein Problem bei der Verarbeitung der odbc-Errors...

    Den Error erkennen und darauf reagieren kann ich. Aber leider knallts mir dennoch die ganze Error-Message auf den Bildschirm.

    Das ist der Code, mit dem ich den Aufruf, in diesem Fall einen Update, ausführe und den Error abhandle. Naja, das Abhandeln geht eben noch nicht ganz so, wie ich es will....
    PHP-Code:
    $svSQL "call LVIF.LVBSCUSTREGREQUEST('Postx', '$KNDID', $CUSTOMERPID, '$AUTHTOKEN', '$BCRSTATUS', '$INVOICECOLL')";
                
    odbc_exec($connectionID,$svSQL);
                
    $err odbc_errormsg ($connectionID);
                
                if (
    $err == "") {                        
                    
    header('Location: regdone.php');
                }else{
                    
    $errmsg .= "Fehler in der Verarbeitung";
                } 
    Kann mir jemand sagen, wie ich die Aussage des Errors auf den Bildschirm verhindern kann?

    Danke

    Gruss
    Philipp

  • #2
    Re: odbc und IBM DB2 / Error-Handling

    Original geschrieben von philippCH

    Kann mir jemand sagen, wie ich die Aussage des Errors auf den Bildschirm verhindern kann?
    @ ist dein Freund, sei aber vorsichtig damit.

    Kommentar


    • #3
      Das mir das jetzt weiterhilft, wage ich zu bezweifeln.

      Aber wenn du mir jetzt einen, in der Hitze des Gefechts entstandenen, Schreibfehler um die Ohren schmieren willst....

      Aber falls es jemand nicht versteht, es soll natürlich so heissen:


      Kann mir jemand sagen, wie ich die Ausgabe des Errors auf den Bildschirm verhindern kann?

      Kommentar


      • #4
        Ich glaube, er meinte, du sollst ein @ vor den Funktionsaufruf setzen
        PHP-Code:
        @odbc_exec($connectionID,$svSQL); 
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Ach so.... hab ich noch nie gebraucht und deshalb nicht als Hinweis erkannt...


          Sorry für die Kritik und danke für die Hilfe

          Kommentar


          • #6
            mal so ne frage am Rande, wie wärs denn die Fehlermeldungen
            abzuarbeiten damit erst gar keine mehr ausgegeben werden?



            weil eine Ausgabe ala:
            $errmsg .= "Fehler in der Verarbeitung";
            hilft einen nicht wirklich, ist genauso so effektiv wie eine Windows
            Fehlermeldung: "Programm Sofort Beenden oder Abbrechen";
            mfg
            marc75

            <Platz für anderes>

            Kommentar


            • #7
              Da hast du sicherlich recht, aber zum einen steckt das ganze noch total in den Kinderschuhen und zum zweiten handelt es ich hier "nur" um einen Update-Befehl auf das AS/400.

              Die Werte, die ich im call übergebe, werden schon vorgängig auf ihre Gültigkeit hin gecheckt. Daher kann an diesem Punkt nur eine Fehlermeldung entstehen, wenn das AS/400 den call aus irgendeinem Grund nich entgegennehmen kann. Und die Wahrscheinlichkeit, dass das passiert geht gegen null.

              Es geht mir für's erste nur darum, dass der User eine "schöne" Fehlermeldung bekommt und nicht der ganze ODBC-Error-String rausgeknallt wird.

              Kommentar


              • #8
                Original geschrieben von philippCH
                Da hast du sicherlich recht, aber zum einen steckt das ganze noch total in den Kinderschuhen und zum zweiten handelt es ich hier "nur" um einen Update-Befehl auf das AS/400.

                hello,

                auch wenns protzig klingt. Aber bitte spreche doch in Zukunft von DER AS/400.
                Ich weiss, dass AS für das Application System (Anwendungssystem) steht, aber mir als ollen AS/400er kräuseln sich jedesmal die Nackenhaare wenn da einer von das AS/400 spricht.
                Die AS/400ler haben (jedenfalls in D) immer von DER AS/400 oder von DEM AS/400-System gesprochen.
                Das ist und bleibt einfach ne Sie...

                Nichts für ungut und sorry , dass ich den Thread nochmal aufgemacht habe.

                kuempi

                P.S. die Vorgängerkiste war btw. auch immer schon eine SIE...

                PPS machste immer noch auf ner AS/400 rum?

                Kommentar

                Lädt...
                X