PDO: Bei SELECT-Abfrage mit mehreren Felder stürzt XAMPP ab
Lukas Schmelzeisen
- php
Hi Forum,
Immer wenn ich diesen PHP Code ausführen lasse
<?php
$db = new PDO('mysql:host=localhost;dbname=dbname', 'user', 'passwd');
$result = $db->query('SELECT title, content FROM avac_pages WHERE id = 1');
?>
hängt sich XAMPP mit der Meldung "Apache HTTP Server hat ein Problem festgestellt und muss beendet werden." auf. Wenn ich den SQL-Code in phpmyadmin laufen lasse klappt alles ohne Probleme. Der Fehler scheint wohl daher zu stammen das ich mehr als ein Feld mit SELECT abfrage, denn folgender Code läuft problemlos:
<?php
$db = new PDO('mysql:host=localhost;dbname=dbname', 'user', 'passwd');
$result = $db->query('SELECT title FROM avac_pages WHERE id = 1');
?>
Wo liegt mein Fehler im 1. Code?
Mfg Lukas
Hi Lukas,
Immer wenn ich diesen PHP Code ausführen lasse
<?php
$db = new PDO('mysql:host=localhost;dbname=dbname', 'user', 'passwd');
$result = $db->query('SELECT title, content FROM avac_pages WHERE id = 1');
?>
hängt sich XAMPP mit der Meldung "Apache HTTP Server hat ein Problem festgestellt und muss beendet werden." auf.
das hört sich unlogisch an. Nein, ich will nicht sagen, dass es nicht stimmt, was du sagst - aber warum sollte der Webserver[1] beendet werden, wenn es ein Problem beim SQL-Server gibt?
Der Fehler scheint wohl daher zu stammen das ich mehr als ein Feld mit SELECT abfrage, denn folgender Code läuft problemlos:
<?php
$db = new PDO('mysql:host=localhost;dbname=dbname', 'user', 'passwd');
$result = $db->query('SELECT title FROM avac_pages WHERE id = 1');
?>
Nochmal: Dieser Zusammenhang zwischen Code und Ergebnis ist für mich nicht nachvollziehbar. Ich vermute, dass es noch andere wesentliche Unterschiede oder Einflussfaktoren gibt, die das beschriebene Verhalten auslösen.
So long,
Martin
[1] nicht XAMPP wird in deinem Fall beendet, sondern der Apache. XAMPP ist ja nur das Gesamtpaket aus Webserver, Datenbankserver, PHP und Perl.
Hello,
das hört sich unlogisch an. Nein, ich will nicht sagen, dass es nicht stimmt, was du sagst - aber warum sollte der Webserver[1] beendet werden, wenn es ein Problem beim SQL-Server gibt?
Weil PHP als Modul des Apache läuft und das Modul irgendeinen Rückgabewert nicht verkraftet? Buffer-Overflow? NySQL versucht, mehr Daten zu liefern, als das PHP-Modul in dem Moment vertragen kann?
aus Webserver, Datenbankserver, PHP und Perl.
Liebe Grüße aus Syburg
Tom vom Berg
Hi Martin,
Nochmal: Dieser Zusammenhang zwischen Code und Ergebnis ist für mich nicht nachvollziehbar. Ich vermute, dass es noch andere wesentliche Unterschiede oder Einflussfaktoren gibt, die das beschriebene Verhalten auslösen.
Ich lasse beide Codes so 1:1 laufen (mit abgeänderten Login-Daten :)). Ohne irgendwelche zusatz code oder includes. Also ist dies der einzigste Einzugsfaktor.
[1] nicht XAMPP wird in deinem Fall beendet, sondern der Apache. XAMPP ist ja nur das Gesamtpaket aus Webserver, Datenbankserver, PHP und Perl.
Das mag stimmen. Ich bekomme die angegebene Meldung und danach startet der Apache neu.
Mfg X4rd3n
Ok Problem hat sich erledigt. Mit der neuen XAMPP Beta Version läuft alles super.