Začínáme->part2->PHP extension ‚sqlite‘ is not loaded
- yumpa
- Člen | 3
Ahoj, začínám jak s PHP, tak s Nette. Stáhnul jsem si ze seriálu „Začínáme“ tutorial.datagrid.part2.zip a nemůžu ho rozchodit. Na localhostu se mi zobrazí chyba v souboru /var/www/DataGrid/libs/dibi/drivers/sqlite.php Line: 65:
<?php
if (!extension_loaded('sqlite')) {
throw new DibiDriverException("PHP extension 'sqlite' is not loaded.");
}
?>
Pak jsem to ještě zkusil spustit na mém hostingu u Isolu a tam se zobrazilo jen:
Server Error
The server encountered an internal error and was unable to complete your
request. Please try again later.
Nette Framework
Nevíte někdo, co dělám špatně?
- piler
- Člen | 111
Ja mam tiez problem. Na serveri (rackspace) je to sqlite nainstalovane ako pdo_sqlite a tym padom to neprejde cez kontrolu:
<?php
if (!extension_loaded('sqlite')) {
throw new InvalidStateException("SQLite extension is required for storing tags and priorities."); }
?>
Skusil som zakomentovat tuto kontrolu, ale nasledne som dostal dalsiu chybu:
Call to undefined function sqlite_open();
na
<?php
$this->db = sqlite_open($this->dir . '/cachejournal.sdb');
?>
Na supporte rackspace tvrdia, ze nemozu nainstalovat iba sqlite, kvoli nejakym obmedzeniam.
Co sa s tym da spravit? Dik za rady
- Majkl578
- Moderator | 1364
piler napsal(a):
Ja mam tiez problem. Na serveri (rackspace) je to sqlite nainstalovane ako pdo_sqlite a tym padom to neprejde cez kontrolu:
<?php if (!extension_loaded('sqlite')) { throw new InvalidStateException("SQLite extension is required for storing tags and priorities."); } ?>
Skusil som zakomentovat tuto kontrolu, ale nasledne som dostal dalsiu chybu:
Call to undefined function sqlite_open();
na
<?php $this->db = sqlite_open($this->dir . '/cachejournal.sdb'); ?>
Na supporte rackspace tvrdia, ze nemozu nainstalovat iba sqlite, kvoli nejakym obmedzeniam.
Co sa s tym da spravit? Dik za rady
PDO a sqlite rozšíření jsou dvě různé věci. Logicky ti nebude fungovat sqlite_open, když ho pdo_sqlite nenabízí. Nech si nainstalovat sqlite rozšíření nebo změň hosting (až mě překvapuje, že je někde nenainstalované).
- Patrik Votoček
- Člen | 2221
Dávejte si pozor pokud provozujete Nette na PHP 5.3.x tam je totiž standardně nainstalované SQLite3 u PHP 5.2 to je SQLite2. Nette používá SQLite2 takže pokud jste ho dodatečně neinstalovaly SQLite2 musíte tak udělat a to i u Nette pro PHP 5.3 (té s namespace)!
- piler
- Člen | 111
PDO a sqlite rozšíření jsou dvě různé věci. Logicky ti nebude fungovat sqlite_open, když ho pdo_sqlite nenabízí. Nech si nainstalovat sqlite rozšíření nebo změň hosting (až mě překvapuje, že je někde nenainstalované).
To mi je jasne, ze su to dve rozdielne veci. Hosting je na rackspace, za ktory platime 400 libier mesacne. A tym padom dostavame kvalitne spravovany hosting. A ako mi bolo povedane s rackspace, tak so security reasons nie je mozne pouzit sqlite, ale treba pristupovat cez PDO.
Nasiel som aj niekde na php.net vysvetlenie preco, ale neviem sa teraz k tomu dopatrat.
- piler
- Člen | 111
vrtak-cz napsal(a):
Dávejte si pozor pokud provozujete Nette na PHP 5.3.x tam je totiž standardně nainstalované SQLite3 u PHP 5.2 to je SQLite2. Nette používá SQLite2 takže pokud jste ho dodatečně neinstalovaly SQLite2 musíte tak udělat a to i u Nette pro PHP 5.3 (té s namespace)!
To je dobre vediet, dik :)