Newsgroup: it.comp.www.php
Titolo: problema di upgrade della versione

Salve a tutti.
 
Accedo a un server Firebird tramite IIS e php 5.2.17 + l'estensione  
php_interbase.dll.
Ora vorrei passare a php 5.6.14, ma php_interbase.dll non viene caricata,  
benché sia richiesta nel file php.ini.
 
Sbaglio/ometto qualcosa?
Sono obbligato a usare PDO?
Non posso avere il vecchio e il nuovo insieme, almeno provvisoriamente?
 
Grazie.


premetto non ho esperienze di firebird, ma mi pare un problema 
accomunabile ad altro:
la ddl è la versione giusta? (32/64bit, versione giusta di php sia come 
revisione che come thread safe(nonsafe)).
Se guardi il log di partenza di php (con iis non so dove li metta però) 
ci dovrebbe essere un errore in cui ti dice perchè non la carica.
 
-- 
Z.

 ci dovrebbe essere un errore in cui ti dice perchè non la carica.
 
Qual è il nome del log di partenza di php?
A parte questo, da quello che dici io capisco che anche nelle versioni  
successive alla 5.2.17 è possibile impiegare le vecchie dll specifiche dei  
diversi database, che si trovano nella cartella ext. Giusto?
 
Grazie.

 dei diversi database, che si trovano nella cartella ext. Giusto?
 
Esattamente il contrario: ogni versione usa le sue estensioni, può 
capitare funzionino anche quelle vecchie, ma normalmente non è così.
L'estensione di firebird fa parte del tuo pacchetto php? (se si, è già 
la versione corretta e devi proprio guardare il log, dato ci saranno 
casini sulle dipendenze, io con postgre li ho avuti spesso).
 
-- 
Z.

>> però) ci dovrebbe essere un errore in cui ti dice perchè non la carica.
 
Siccome IIS è un prodotto Microsoft le notizie stanno nel registro degli  
eventi.
Ovvio (dopo, sempre).
 
Non vengono registrati errori caricando php 5.6.14 e phpinfo() mostra  
correttamente la pagina riassuntiva, anche se - a differenza di php 5.2.17  
- NON contiene il riferimento alla dll specifica di interbase/firebird ma  
al driver PDO (come a quello MySQL, PostgreSQL, ecc.).
 
Se provo però ad accedere alla base di dati ottengo questo errore (oltre a  
un Fatal error: Call to undefined function ibase_connect()):
 
php[4004]
PHP Warning: PHP Startup: interbase: Unable to initialize module
Module compiled with module API=20060613
PHP    compiled with module API=20131226
These options need to match
  ("D:\WebLab\php_050614\php-cgi.exe")
 
Capisco confusamente che si tratta di un problema di compilazione di  
pacchetti diversi, ma non capisco perché elementi che provengono dalla  
STESSA versione vadano in conflitto.
 
Devo aggiungere che il problema si manifesta non solo nella versione di  
sviluppo del sito in localhost, ma anche in quella remota, gestita dal  
pannello di controllo Plesk: se abilito con il pannello php 5.2.17 va  
tutto bene, ma se abilito php 5.6.14 funziona ancora tutto, ma solo finché  
non chiamo il database...

Risolto.
 
Nella directory /php (non nella subdirectory /php/ext) occorre mettere la  
libreria fbclient.dll che però deve essere quella prelevata dalla versione  
a 32 bit di Firebird. Chi copia in /php quella presente nella cartella  
/bin di Firebird a 64 bit perde una giornata come me.