ursus contionabundo: Kleine Verfeinerung der reportPDOError - Methode

Beitrag lesen

meine reportPDOError Methode häufiger nutzen

Kann man wirklich. Da gilt es aber noch was zu verfeinern. Die Methode gibt nämlich stets auf der Webseite aus, was gerade nicht immer erwünscht ist:

private function reportPDOError( $message, $sql ) {
    $info = $this -> dbh -> errorInfo();
    echo "<div style='color:red'><b>Error in SQL Access: $message</b>";
    echo "<br>SQL-Statement: $sql";
    echo "<br>PDO SQLSTATE: $info[0]";
    echo "<br>MySQL error code: $info[1]";
    echo "<br>MySQL error message: $info[2]</div>";
}

Mein Vorschlag (blind geschrieben, nicht getestet):

private function reportPDOError( $message, $sql, $isFatal = false ) {
    $info = $this -> dbh -> errorInfo();
 
    trigger_error ( 'Error in SQL Access: ' . $message, E_USER_NOTICE ); 
    trigger_error ( 'SQL-Statement: '       . $sql    , E_USER_NOTICE ); 
    trigger_error ( 'PDO SQLSTATE: '        . $info[0], E_USER_NOTICE ); 
    trigger_error ( 'MySQL error code: '    . $info[1], E_USER_NOTICE ); 
    trigger_error ( 'MySQL error message: ' . $info[2], E_USER_NOTICE ); 

    if ( DEBUG || ini_get('display_errors') ) {
        echo '<div style="color:red"><b>Error in SQL Access: ' . $message . '</b>';
        echo '<br>SQL-Statement: '       . $sql
           . '<br>PDO SQLSTATE: '        . $info[0]
           . '<br>MySQL error code: '    . $info[1]
           . '<br>MySQL error message: ' . $info[2]
           ;
        if ( $isFatal ) {
            echo '<br>Exit called.</div>';
            exit;
        }
        echo '</div>';
    }
    if ( $isFatal ) {
        trigger_error ('Exit called.', E_USER_ERROR );
    }
}
0 94

phpmyadmin nicht start

liebewinter
  • datenbank
  1. 0
    Rolf B
    1. 0
      liebewinter
  2. 1
    ursus contionabundo
    1. 0
      liebewinter
      1. 0
        ursus contionabundo
      2. 0
        ursus contionabundo
        1. 0
          liebewinter
          1. 0
            ursus contionabundo
            1. 0
              liebewinter
              1. 0
                ursus contionabundo
                1. 0
                  liebewinter
                  1. 0
                    ursus contionabundo
                    1. 0
                      liebewinter
                      1. 0
                        ursus contionabundo
                        1. 0
                          liebewinter
                          1. 0
                            ursus contionabundo
                            1. 0
                              liebewinter
                              1. 1
                                ursus contionabundo
                                1. 0
                                  liebewinter
                                  1. 0
                                    ursus contionabundo
                                    1. 0
                                      liebewinter
                                      1. 0
                                        ursus contionabundo
                                  2. 0
                                    ursus contionabundo
                                    1. 0
                                      liebewinter
                                      1. 0
                                        ursus contionabundo
                                        1. 0
                                          liebewinter
                                          1. 0
                                            ursus contionabundo
                                            1. 0
                                              liebewinter
                                              1. 0
                                                liebewinter
                                                1. 0
                                                  ursus contionabundo
                                                  1. 0
                                                    liebewinter
                                                    1. 0
                                                      ursus contionabundo
                                                      1. 0
                                                        liebewinter
                                                        1. 0
                                                          ursus contionabundo
                                                          1. 0
                                                            liebewinter
                                                          2. 1

                                                            Es lag definitiv am PHP...

                                                            ursus contionabundo
                                                            1. 0

                                                              Was an der Kommentarfunktion konzeptionell schlecht ist

                                                              ursus contionabundo
                                                              1. 0
                                                                liebewinter
                                                                1. 0
                                                                  liebewinter
                                                                  1. 0
                                                                    liebewinter
                                                                    1. 0
                                                                      Tabellenkalk
                                                                    2. 0

                                                                      Altes Zeug löschen

                                                                      ursus contionabundo
                                                                      1. 0
                                                                        liebewinter
                                                                        1. 0
                                                                          liebewinter
                                                            2. 0
                                                              liebewinter
                                                              1. 0
                                                                liebewinter
                                                                1. 0

                                                                  Deine Datenbank-Tabelle ist wahrscheinlich (noch) falsch.

                                                                  ursus contionabundo
                                                                  1. 0
                                                                    liebewinter
                                                                    1. 0
                                                                      ursus contionabundo
                                                                      1. 0
                                                                        liebewinter
                                                                        1. 0
                                                                          ursus contionabundo
                                                                  2. 0
                                                                    liebewinter
                                                                    1. 0
                                                                      Rolf B
                                                                      1. 0
                                                                        liebewinter
                                                                        1. 0

                                                                          Auf dem Weg zum DELETE

                                                                          Rolf B
                                                                        2. 0

                                                                          Nein! Du machts jetzt einen Plan.

                                                                          ursus contionabundo
                                                                          1. 0
                                                                            liebewinter
                                                                      2. 0
                                                                        liebewinter
                                                                        1. 0
                                                                          Rolf B
                                                                          1. 0
                                                                            liebewinter
                                                                            1. 0
                                                                              Rolf B
                                                                              1. 0
                                                                                liebewinter
                                                                                1. 0
                                                                                  liebewinter
                                                                                  1. 0
                                                                                    Rolf B
                                                                                    1. 0
                                                                                      liebewinter
                                                                                    2. 0
                                                                                      liebewinter
                                                                                    3. 0
                                                                                      liebewinter
                                                                                      1. 0
                                                                                        Rolf B
                                                                                        1. 0
                                                                                          Matthias Apsel
                                                                                          • menschelei
                                                                                          1. 0
                                                                                            Rolf B
                                                                                        2. 0
                                                                                          liebewinter
                                                                                      2. 0

                                                                                        Tabelle wird nicht gezeigt

                                                                                        liebewinter
                                                                2. 0
                                                                  Rolf B
                                                                  1. 0

                                                                    Kleine Verfeinerung der reportPDOError - Methode

                                                                    ursus contionabundo
                                                                    • datenbank
                                                                    • php
                                                                    1. 0
                                                                      liebewinter
                                                                      1. 0
                                                                        ursus contionabundo
                                                                        1. 0
                                                                          MudGuard
                                                                        2. 0
                                                                          liebewinter
                                                                          1. 0
                                                                            ursus contionabundo
                                                                            1. 0
                                                                              liebewinter
                                                                              1. 0
                                                                                ursus contionabundo
                                                                                1. 0
                                                                                  liebewinter
                                                                                  1. 0
                                                                                    ursus contionabundo
                                                                                    1. 0
                                                                                      liebewinter
                                                                                      1. 0
                                                                                        ursus contionabundo
                                                                                        1. 0
                                                                                          liebewinter
                                                                                          1. 0
                                                                                            liebewinter
                                                      2. 0
                                                        liebewinter
                                                2. 0
                                                  liebewinter
                                                  1. 0
                                                    liebewinter
                                                    1. 0
                                                      ursus contionabundo
                        2. 0
                          ursus contionabundo
                          1. 0
                            liebewinter