In einer Linux-Umgebung können keine Datensätze in SQLite eingefügt werden.

In einer Linux-Umgebung können keine Datensätze in SQLite eingefügt werden.

Ich habe ein einfaches PhpProgramm mit Sqlite3anstelle von mySQLauf meinem eigenen Computer getestet und es funktioniert einwandfrei. Das Programm fügt einfach einen Datensatz in eine bestimmte Tabelle ein. Wenn ich dies jetzt auf einem Remote-Webserver unter Linux(CentOS) mit Sqlite3aktivierter Funktion versuche, funktioniert es nicht.

Ich dachte zunächst, es handele sich lediglich um ein Problem mit den Dateiberechtigungen, da meine SqliteDatei anfängliche Berechtigungen von644also habe ich es geändert in646Dann767beides ohne Erfolg.

Die PhpVersion auf dem Webserver ist übrigens etwas veraltet, nämlichPhp 5.1.6aber auf meinem lokalen PC ist es5.5.11.

Dies ist der Beispielcode, den ich auf beiden Servern ausgeführt habe.

$db = new PDO('sqlite:test.db');

$lastname = "Doe";
$firstname = "John";
$sql = "INSERT INTO people (Lastname,Firstname) VALUES (:lastname,:firstname)";

$q = $db->prepare($sql);
$q->execute(array(':lastname'=>$lastname,
                  ':firstname'=>$firstname));

Ich habe eine einfache Abfrage auf einemsqlite3Datenbank übrigens auf dem Webserver und es funktioniert.

Könnte es sich also um ein einfaches PhpVersionsproblem oder um einige erweiterte Rechte handeln, die ich unter Linux benötige?

Ich kann das übrigens nicht ändern, php.inialso verzichte ich im Moment auf diese mögliche Richtung. Und ich habe keine Wahl, eine neue PhpVersion auf diesem Server zu installieren, da ich ihn kostenlos verwende.

Ich habe versucht, dieselbe Frage SO zu stellen, aber ohne Erfolg, also versuche ich hier mein Glück.

verwandte Informationen