[PDO] Browser meldet "Verbindung unterbrochen" bei mehr als einer Spalte im Select

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

  • [PDO] Browser meldet "Verbindung unterbrochen" bei mehr als einer Spalte im Select

    Hallo zusammen,

    ich stehe hier seit Stunden vor einem Problem und hoffe dass ich hier weiter komme.

    Folgendes...

    Ich habe das Problem dass wenn ich mit PDO ein Select ausführe in dem mehr als eine Spalte zur Ausgabe steht (oder gar ein "*"), der Browser mir nach kurzer Zeit nur ein "Verbindung unterbrochen liefert".

    Hier mal ein Auszug von meinem Testcode...

    PHP-Code:
    public function select2($sql$values "")
    {
        try
        {
            
    $this->db->beginTransaction();
            
            ....
            
            
    $stmt $this->db->prepare($sql);
            
    // Hier bekomme ich noch mit "print_r($stmt);exit;" eine Ausgabe
            
    $stmt->execute($values);
            
    // Hier kommt nix mehr
            
            
    $this->db->commit();
            
            ....
            
            return 
    $output;
        }
        catch(
    PDOException $ex)
        {            
            ....
        }
    }
        
    // Das hier bringt mir den Browserfehler "Verbindung unterbrochen"    
    $test $this->db->select2("SELECT spalte1, spalte2, spalte3 FROM tabelle1 WHERE spalte4=? AND spalte5=?", array("eintrag1""eintrag2"));
        
    // Das hier bringt mir auch den Browserfehler "Verbindung unterbrochen"    
    $test $this->db->select2("SELECT * FROM tabelle1 WHERE spalte4=? AND spalte5=?", array("eintrag1""eintrag2"));
        
    // Das hier funktioniert und bringt mir das Ergebnis (Auch egal welche Spalte ich da ausgeben lasse!)
    $test $this->db->select2("SELECT spalte1 FROM tabelle1 WHERE spalte4=? AND spalte5=?", array("eintrag1""eintrag2")); 
    Ich hoffe das ist einigermaßen Verständlich erklärt. Ich hab nach 6 Stunden Fehlersuche gerade ein Brett vor dem Kopf

    Gruß

    Ojjam

    EDIT: War mir jetzt nicht sicher ob ich es ins PHP oder SQL Forum posten sollte. Hielt es hier für sinniger. Falls das ein Mod anders sieht, bitte verschieben.
    Zu den eingesetzten Versionen...
    PHP 5.2
    MySQL 5.1.30
    Zuletzt geändert von Ojjam; 07.08.2015, 14:08. Grund: Falsches Forum? und Versionen

  • #2
    Bei SELECT-Anweisungen mit Transaktionen zu arbeiten, ist so überflüssig wie ein Kropf.

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      PHP 5.2 ist hoffnungslos veraltet. Bitte nicht mehr verwenden.

      Welcher Fehler tritt am Server auf?

      Kommentar


      • #4
        5.2 wird leider zwingend benötigt.

        Am Server treten keine Fehler auf. Im Apache-Errorlog ist nichts zu finden und PHP gibt keine Fehler aus.

        Kommentar


        • #5
          Zitat von Kropff Beitrag anzeigen
          Bei SELECT-Anweisungen mit Transaktionen zu arbeiten, ist so überflüssig wie ein Kropf.

          Peter
          Danke für den Hinweis. Bin ziemlich Neu im Bereich PDO und hab noch einige Defizite.

          Kommentar


          • #6
            Wenn kein Fehler am Server auftritt und der Browser einen Fehler meldet, würde ich eher darauf tippen, dass die Ursache zwischen Server und Browser liegt und nicht beim Server. Oder irgendwas ist ziemlich schief und falsch konfiguriert. Aber mit so wenigen Informationen kann man wenig sagen.

            Du könntest auch mal das Timeout Limit am Webserver etwas runtersetzen (zB. auf 15 Sekunden) und schauen, ob die Anwendung in einen Timeout läuft. Dieser muss dann im Fehler-Log auftauchen.
            Zuletzt geändert von h3ll; 08.08.2015, 09:10.

            Kommentar


            • #7
              So, jetzt komme ich wieder ans System ran und kann weiter probieren.

              Also es muss am Server liegen, denn auf zwei Testsystemen läuft das Script rund.
              Nur auf dem besagten System nicht.
              Am liebsten würde ich dort PHP aktualisieren, das kann ich aber leider nicht tun, da die Version zwingend von anderen Scripten benötigt wird.

              Kommentar


              • #8
                Unwahrscheinlich dass jemand mal das gleiche Problem haben wird, aber hier mal die Lösung...

                XAMPP hat eine libmysql.dll mit 1.646.592 Bytes vom 17.12.2008 aktiv.
                Nebenher lag eine libmysql_5.0.51a.dll mit 2.076.672 Bytes vom 8.12.2008.

                Im offiziellen PHP Paket (5.2.8) liegt eine libmysql.dll die identisch mit der vom 8.12.2008 ist.

                Diese habe ich nun in den Ordnern "...xampp/apache/bin" und "...xampp/php" kopiert und die kleineren ersetzt. Server neu gestartet und Problem behoben.

                Man man man. Hat mich das jetzt Nerven und Zeit gekostet.

                Vielen Dank an alle die sich beteiligt haben.

                Gruß

                Ojjam

                Kommentar

                Lädt...
                X