Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di Pierock
    Registrato dal
    Dec 2008
    Messaggi
    102

    [PHP] connessione postgres

    salve ragazzi.. ho un problema con la connessione ad un database postgres che proprio non riesco a risolvere...
    in pratica scrivendo delle righe in php per connettermi al database
    codice:
    <?php
    $conn = pg_connect('dbname=<miodb> user=<mioutente> password=<pswutente>');
    echo 'Connetto!
    ';
    if(!$conn){
    die('Connessione fallita!
    ');
    }else {
    echo 'Connessione riuscita!
    ';
    }
    ?>
    ottengo solo una pagina bianca...
    ho già provato a leggere altri post.. http://forum.html.it/forum/showthread/t-1276100.html
    ma non sono riuscito a risolvere nulla...
    - nel mio php.ini non compare nemmeno la riga
    codice:
    ;extension=php_pgsql.dll
    ...cosa faccio? ce la metto io? .. e dove?
    ed inoltre... non riesco a trovare da nessuna parte il file pg_hba.conf .. !!!
    a quanto pare non esiste...
    non so proprio cosa devo fare... suggerimenti?

  2. #2
    Utente di HTML.it L'avatar di Pierock
    Registrato dal
    Dec 2008
    Messaggi
    102
    nessuno mi sa dare qualche consiglio?

  3. #3
    bah odio windows...

    cmq vedi te se in phpinfo trovi il supporto a pgsql, altrimenti ricontrolla di aver fatto questo:

    http://www.devnetwork.net/viewtopic.php?f=2&t=43743

    e vedi un pò se in phpinfo vedi cambiamenti
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  4. #4
    Utente di HTML.it L'avatar di Pierock
    Registrato dal
    Dec 2008
    Messaggi
    102
    ciao Santino... innanzi tutto grazie mille per aver risposto...
    su windows siamo d'accordo... ma almeno per questa volta non c'entra... sono su Ubuntu..
    anche per questo trovo difficoltà ... in quanto in rete trovo solo spiegazioni che fanno riferimento a file con path di windows.. ed io non so bene dove trovarli...

    cmq.. facendo phpinfo.. pgsql non risulta...
    fin ora sono riuscito a capire sia questo il problema centrale.. ma onestamente.. nn so ne dove andare a prendere quella dll (qui va bene?)
    e .. dove andarla a mettere... nn trovo la directory "ext"
    uso php5 .. quindi .. in ext/php5 ext non c'è .. la creo io?

  5. #5
    Utente di HTML.it L'avatar di Pierock
    Registrato dal
    Dec 2008
    Messaggi
    102
    ..mmm
    nel mio phpinfo... alla voce additiona .ini compaiono
    codice:
    /etc/php5/apache2/conf.d/gd.ini, /etc/php5/apache2/conf.d/mcrypt.ini, /etc/php5/apache2/conf.d/mysql.ini, /etc/php5/apache2/conf.d/mysqli.ini, /etc/php5/apache2/conf.d/pdo.ini, /etc/php5/apache2/conf.d/pdo_mysql.ini
    quando invece se ho ben capito dovrebbero esserci
    pdo_pgpsql.ini e pgsql.ini

    ne deduco che il mio php sia settato per connettersi ad un db mysql e non postgres ...
    come lo setto nel modo giusto?
    .. nn può essere impostato contemporaneamente per entrambi?

  6. #6
    Utente di HTML.it L'avatar di Pierock
    Registrato dal
    Dec 2008
    Messaggi
    102
    continuo il diario di bordo...
    ho fatto
    codice:
    sudo apt-get install php5-pgsql
    ora nel phpinfo
    ci sono anche i .ini relativi a postgres...
    codice:
    /etc/php5/apache2/conf.d/gd.ini,
    /etc/php5/apache2/conf.d/mcrypt.ini,
    /etc/php5/apache2/conf.d/mysql.ini,
    /etc/php5/apache2/conf.d/mysqli.ini,
    /etc/php5/apache2/conf.d/pdo.ini,
    /etc/php5/apache2/conf.d/pdo_mysql.ini,
    /etc/php5/apache2/conf.d/pdo_pgsql.ini,
    /etc/php5/apache2/conf.d/pgsql.ini
    la connessione però mi restituisce ancora pagina bianca.... ho davvero finito le idee

  7. #7
    pensavo a windows perchè ho letto "dll" nel tuo post e pensavo smanettassi con windows. Cmq se ora phpinfo ti visualizza il supporto a pgsql, controlla che nel php.ini ci sia la visualizzazione degli errori attiva e vedi quale errore effettivamente ti posta... che sò, nel tuo file non c'è per esempio l'ip del server (localhost immagino) e questo magari gli darà errore...
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  8. #8
    Utente di HTML.it L'avatar di Pierock
    Registrato dal
    Dec 2008
    Messaggi
    102
    Si Santino... perdonami.. hai ragione...sl che nella confusione che mi si era creata in mente in quel momento vedendo 2mila post più o meno correlati al mio problema ho iniziato anche a sentir e di conseguenza a pensare a dll... capitolo chiuso!

    ora ho seguito il tuo consiglio...
    e nel file php.ini ho settato "display_errors = On"
    ed ho provato ad eliminare la "@" prima del comango pg_connect
    ..ora mi compare questa scritta

    Fatal error: Call to undefined function pg_connect() in /var/www/pg_conn.php on line 3
    ps:
    grazie per l'aiuto!

  9. #9
    Utente di HTML.it L'avatar di Pierock
    Registrato dal
    Dec 2008
    Messaggi
    102
    Santino...
    ho cercato un po' soluzioni su internet .. ed ho trovato un post in cui si suggeriva di controllare se erra stata importata l'estensione pgsql secondo il comando
    Codice PHP:
    echo extension_loaded('pgsql'); 
    ..a me non visualizzava nulla, quindi ho scritto un programmino di verifica..
    Codice PHP:
    if(!extension_loaded('pgsql')){
        echo 
    'no load
    '
    ;
        
    dl('pgsql.so');
        echo 
    'loading
    '
    ;
        }
        else {echo 
    'load
    '
    ;} 
    ... appreso che oramai il comando dl è deprecato .. ho inserito tra le dinamic extension in php.ini
    le extension pgsql.so e sdo_pgsql ..
    a questo punto il programmino di sopra mi conferma che sono state importate...

    ora però... per tentare la mia "benedettissima" connessione a postgres ...
    ottengo questo errore..
    Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? in /var/www/pg_conn.php on line 4 !
    Connessione fallita!
    ... e ora?

  10. #10
    eh marò ma quanti problemi che ti porti dietro... ma che cavolo di pacchetti hai usato su ubuntu?

    cmq

    1) Gira postgres?
    2) riesci ad accederci da shell/pgadmin?
    3) che cosa c'è scritto nel file pg_hba.conf, in particolare ci dovrebbe essere un comando del tipo
    codice:
    # IPv4 local connections:
    host    all             all             127.0.0.1/32            trust
    dove magari al posto di trust c'è scritto ident, credo basti cambiare in trust allora e riavviare postgres
    4) che strano che quando non hai installato il pacchetto non ti abbia tirato su il modulo...ma hai riavviato apache dopo quell'operazione?

    vabbeh alla prossima puntata


    edit:

    scusa la riga era questa del file:
    codice:
    # "local" is for Unix domain socket connections only
    local   all             all                                    ident
    cmq prova a specificare nella connection strings l'host=localhost perchè leggevo nella guida php che se ometti il parametro host, pg_connect si collega al socket. ora le cose son due, o ci sono problemi di permessi (filesystem,postgres) oppure php pensa che il socket sia nella path che ti dice l'errore, mentre magari nel tuo ubuntu il socket è da un'altra parte...metti host=localhost e vedi un pò
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.