Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP + Firebird (fdb)
Forum PHP.pl > Forum > PHP
ensim
Cześć Wszystkim,
Mam takie pytanie posiadam plik bazy danych .fdb wygenerowany w zewnętrzym programie pod Windowsem.

Potrzebuję napisać aplikacje w PHP, która wykorzysta ten plik (jest on wysyłany co 10 minut na serwer www).

Próbowałem podpiąć się przez adodb, niestety otrzymywałem pustą strone, jak się okazało, brakuje na moim hostingu interbase i pdo-firebird w obsłudze php.

Czy pisał ktoś kiedyś taką aplikację i mógłby zarysować jak to rozwiązał od strony połączenia pliku fdb do aplikacji www?

Dzieki
kiler129
Bez PDO wiele nie zdziałasz, robienie tego na piechotę będzie dużo gorsze niż kupienie najtańszego VPSa
thek
Jeśli brak Ci wbudowanej obsługi interbase/firebird w php (niestety nie jest to domyślne i trzeba wkompilować tę obsługę) to zgłoś się do hostingu z zapytaniem czy nie mogą tego dodać. Boniestety ale bez tego jest kiszka. Musiałbyś sam napisać od podstaw obsługę tego silnika w php.
ensim
linuxpl.com ponoć ma obsługę firebirda domyślnie.

No nic dzięki za odpowiedź, kupiony dedyk, jutro będziemy testować

A powiedzcie mi co lepsze, czy pdo-firebird czy interbase ?


Serwer stoi, PDO i PDO firebird w php jest, ale wykorzystujac taki kod:
CODE
$dbh = new PDO('firebird:dbname=localhost:/home/taras/domains/druk24.net/public_html/e-bok/database/DATA.FDB','SYSDBA','masterkey');
foreach($dbh->query('SELECT * from KLIENT') as $row) {
print_r($row);
}


dostaję błąd:
Fatal error: Call to a member function query() on a non-object in /home/taras/domains/druk24.net/public_html/e-bok/includes/zalogowany.php on line 7

Gdzie może być problem?
thek
Skoro sypie takiego errora, to znaczy, że $dbh nie jest obiektem połączenia, a więc coś nie tak z utworzeniem go jest. Zapewne jakiś błąd podczas tworzenia obiektu PDO dla tej bazki.
ensim
Nie działa nawet na przykładach z internetu. Chyba coś jest nie tak w PHP zainstalowanym.

Czy znacie jakąś metodą przekonwertowania bazy firebirda do mysql/postgresql

Warning: ibase_connect() [function.ibase-connect]: database file appears corrupt (/home/taras/domains/druk24.net/public_html/e-bok/database/DATA.FDB) wrong page type page 136 is of wrong type (expected 3, found -1) in /home/taras/domains/druk24.net/public_html/e-bok/includes/zalogowany.php on line 8

Dlaczego takie coś może się zgłaszać? Spotkał się ktoś z czymś takim?
Smertius
Spróbuj połączyć się tak jak niżej, jeśli jest jakiś błąd z połączeniem to PDO rzuci wyjątkiem.

  1. try{
  2. $pdo= new PDO('firebird:dbname=localhost:/home/taras/domains/druk24.net/public_html/e-bok/database/DATA.FDB','SYSDBA','masterkey');
  3. $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  4. }
  5. catch(PDOException $e)
  6. {
  7. echo $e->getMessage();
  8.  
  9. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.