Probleme mit DBM-Funktionen!
Wilhelm Kulzer
- php
Hallo!
Ich hab'n echtes Problem:
Wenn ich auf meinem PC (mit WAMPP) folgendes Script aufrufe,
dann bekomme ich eine Datei mit der Grösse von 14Bytes.
Führe ich jedoch das Script auf dem Webspace von meinem Provider
(1&1) aus, so bekomme ich eine Datei mit 1546Bytes.
Nun Ist es egal ob ich meine Lokale DB-datei "online"
oder die "Online-Datei" lokal auslesen will. Beides funktioniert
nicht..!!! (Zum zurücklesen habe ich natürlich die obrigen 3
Zeilen des Scripts auskommentiert, so dass nur gelesen wird!)
Kennt jemand evtl. des Rätsels Lösung??
Wer kann mir helfen?
Das script lautet:
<?php
//DB erzeugen... (später auskommentiert)
$handle = dbmopen("test.db", "c");
dbminsert($handle, "key1", "value1");
dbmclose($handle);
//DB zurücklesen...
$handle = dbmopen("test.db", "c");
echo dbmfetch($handle, "key1");
dbmclose($handle);
?>
Im Vorraus schonmal danke!
MfG
Wilhelm Kulzer
Hallo Wilhelm,
dann bekomme ich eine Datei mit der Grösse von 14Bytes.
Führe ich jedoch das Script auf dem Webspace von meinem Provider
(1&1) aus, so bekomme ich eine Datei mit 1546Bytes.
Vielleicht ein unterschiedliches Format, probier mal dblist()
Nun Ist es egal ob ich meine Lokale DB-datei "online"
oder die "Online-Datei" lokal auslesen will. Beides funktioniert
nicht..!!! (Zum zurücklesen habe ich natürlich die obrigen 3
Kennt jemand evtl. des Rätsels Lösung??
$handle = dbmopen("test.db", "c");
dbminsert($handle, "key1", "value1");
dbmclose($handle);
$handle = dbmopen("test.db", "c");
echo dbmfetch($handle, "key1");
dbmclose($handle);
Überprüfe die Rückgabewerte der einzelnen Funktionen, dann siehst Du,
ob die Funktionen erfolgreich sind, bzw. was schief geht, siehe z.B.
http://www.php.net/manual/de/function.dbminsert.php
für die Rückgabewerte von dbminsert()
Und probier für das Lesen eine angepasste Version von dem Beispiel in
http://www.php.net/manual/de/ref.dbm.php
Gruss,
Vinzenz
dbminsert()
Hallo!
Danke erstmal für deine Antwort!
(seit 2 Wochen und 10 Foren die erste Antwort!)
Mit dem obrigen Befehl bekomme ich 2 unterschiedliche
Rückmeldungen:
Lokal auf meinem PC: "flat file support enabled"
Server bei 1&1: "This is GDBM version 1.8.0, as of May 19, 1999."
Hab rausgefunden, das dies zwei unterschiedliche "Handler" sind.
Bin aber auch nach 2 Stunden Google nicht schlauer geworden, wie ich diese GDBM-Version bei mir installieren kann...
Hättest du noch'n Tipp für mich?
Alles was ich gefunden habe, war unter www.gnu.org eine Linux-Version davon... (ist aber leider unter windows nicht sooo doll)
MfG
Wilhelm Kulzer
Sorry, meinte natürlich dblist()!