Ich versuche das zum ersten Mal, also kommt mein Code komplett aus Tutorials, aber es funktioniert einfach nicht. I run PHP 7 mit JSON 1.4.0 aktiviert.PDO json_encode funktioniert nicht, wo ist der Fehler?
Ich kann die resultierenden Zeilen drucken, wenn ich json_encode nicht verwende, so dass meine Verbindung und die Abfrage in Ordnung sind.
Fehlerbericht ist aktiv, gibt aber auch nichts aus.
Wenn ich die PHP-Datei auf meinem Server ausführen, bekomme ich nur eine leere Seite.
Hier ist mein Code:
error_reporting(-1);
try {
$conn=new PDO("mysql:host=server.com;dbname=theDB",username,password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare('SELECT * FROM table');
$stmt->execute();
header('Content-type: application/json');
echo json_encode($stmt->fetchAll(PDO::FETCH_ASSOC));
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
hinzufügen 'ini_set ('display_errors', 1);', um Ihren Code oder schau in deine Fehlerprotokolle. –
@bub das '-1' in PHP schaltet [alle PHP Fehler] ein (http://php.net/manual/en/function.error-reporting.php), aber sie werden möglicherweise nicht angezeigt. –
Sie setzen den Ausnahme-Modus NACH dem Versuch, die Verbindung herzustellen. Standardmäßig löst pdo keine Ausnahmen aus. Wenn die Verbindung fehlschlägt, wird keine Ausnahme ausgelöst, da die Ausnahmen noch nicht aktiviert wurden. –