Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Ciao a tutti!
Sto scrivendo un codice in php che dovrebbe comunicare con databases in postgresql. Invece però dei comandi pg_connect, etc... per psql (con i quali comunque il codice è già verificato funzionare), volevo farlo usando odbc (per migliorare la compatibilità in caso di databases di altro tipo (mysql, oracle,odbc) etc...).
Ho già installato unixodbc (sto sviluppando sotto ubuntu... scelta impostami e discutibile, lo so...) ma comunque non riesco neanche a creare la connessione con odbc_connect.
Mi ritorna, infatti, l'errore:
Ma è uno sfizio tuo o per necessità?
La compatibilità con altri sistemi la trovi usando alcune librerie PHP che si sovrappongono tra te e il DB, quale che sia.
Una delle tante è http://adodb.sourceforge.net/
Perché complicarsi la vita?
Karma ha scritto:Purtroppo è una richiesta esplicita fattami dall'ingegnere per cui sto lavorando...
immagino che hai già seguito il documento http://www.unixodbc.org/odbcinst.html, che è il primo che ritorna google con "unixobdc postgres" che consiglia di usare /etc con directory di configurazione. Non ho mai usato unixodbc se non tanti anni fa ma per motivi diversi, solo che ho letto di problemi che si risolvevano usando /etc come path del file .odbc.ini
con il mio template non salvava niente (senza, peraltro resituirmi alcun errore). Allora ho aggiunte le righe a mano nel file /etc/odbc.ini ed adesso l'errore è cambiato:
SQL error: [unixODBC][Driver Manager]Driver's SQLAllocHandle on SQL_HANDLE_HENV failed, SQL state IM004 in SQLConnect in
Che non so se sia peggio o meglio... Con la stringa esatta di questo errore google ritorna solo due risultati. In uno di questi dice che è un bug di php, risolvibile con:
Just add two line into /etc/rc.d/init.d/httpd :
DB2INSTANCE=db2inst1
export DB2INSTANCE
Peccato che quel file io non lo abbia e ora sto cercando di capire dove dovrei mettere quelle righe!
Comunque grazie della risposta, se non avesso ricontrollato non me ne sarei mai accorto...
sembra una esportazione di variabile (ma per DB2?), da mettere prima di lanciare apache, quindi sulla slackware direi /etc/rc.d/rc.httpd
Ma detto tra noi "so na sega Ubuntu dove lo mette"