IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

pg_escape_bytea() fonction non définie alors que bonne version de Postgres


Sujet :

PostgreSQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut pg_escape_bytea() fonction non définie alors que bonne version de Postgres
    Bonjour tout le monde
    Je suis en train d'installer une plateforme collaborative.

    Lors de la création d'une table dans la base PostGre de cette plateforme j'ai une erreur suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Call to undefined function: pg_escape_bytea() in /home/demo/phpgwapi/inc/adodb/drivers/adodb-postgres64.inc.php on line 407

    Après recherche sur le Web, il semble que ce soit lié à un problème de version de Postgre, cette fonction pg_escape_bytea() n'apparaissant qu'après la 7.2

    Pourtant ma version de PostgreSQL est la 7.4.14 d'après l'interface Webmin que j'utilise principalement.

    J'ai recompilé dernièrment PHP avec les commandes suivantes :

    ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-dbase --with-filepro --enable-exif --with-xml --enable-ftp --with-db --enable-bcmath --enable-calendar --with-jpeg-dir --with-png-dir --with-gd --enable-gd-native-ttf --with-freetype-dir --with-gettext --with-mysql --with-zlib-dir --enable-trans-sid --with-imap --with-kerberos --with-imap-ssl --with-openssl --enable-sysvsem --enable-sysvshm --with-gettext --with-dom --with-mcrypt --with-iconv --enable-mbstring=all --enable-mbregex --with-gd --with-png-dir=/usr --with-jpeg-dir=/usr --with-mime-magic=/usr/share/magic.mime --with-pgsql=/usr/bin/pg_config

    Si je vais dans /usr/bin/ je ne trouve pas de fichier pg_config

    Avez vous une idée de comment je peux régler ça ?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    J'ai recompilé php4 avec un changement dans l'option suivante
    --with-pgsql=/usr/local/pgsql/bin/pg_config

    Ca ne change rien

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    avec pg_config --version .. ça me donne la bonne version 7.4.14

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par twoerly
    avec pg_config --version .. ça me donne la bonne version 7.4.14
    vous exécutez PHP via des pagaes Web ?

    -> il faut voir comment PHP est invoqué par le serveur Web et vérifier que le serveur Web utilise bien votre nouvelle version de PHP et éventuellement qu'il n'y ait pas un module spécifique au serveur Web à recompiler et réinstaller (et donc aussi redémarrer le serveur Web…)

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    Citation Envoyé par JeitEmgie
    vous exécutez PHP via des pagaes Web ?

    -> il faut voir comment PHP est invoqué par le serveur Web et vérifier que le serveur Web utilise bien votre nouvelle version de PHP et éventuellement qu'il n'y ait pas un module spécifique au serveur Web à recompiler et réinstaller (et donc aussi redémarrer le serveur Web…)
    Il s'agit d'Apache 2.0.59

    Il faudrait donc que je recompile Apache et le redémarre aussi ?

    Oui, je vais essayer

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par twoerly
    Il s'agit d'Apache 2.0.59

    Il faudrait donc que je recompile Apache et le redémarre aussi ?

    Oui, je vais essayer
    non pas recompiler tout Apache,
    mais regarder si Apache utilise mod_php ou libphpX.so et mettre à jour ce composant…

    et ensuite redémarrer Apache…

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    J'ai bien libphp4.so dans le répertoire modules, et j'ai un LoadModule dans le httpd.conf

    LoadModule php4_module modules/libphp4.so

    (Bien entendu, le ServerRoot est aussi correct pour l'emplacement des fichiers)

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    Pour info, mon phpinfo() montre une section pgsql sans indiquer la version

    Ce que je ne comprends pas c'est qu'il indique une commande de configuration
    './configure' (...) '--with-pgsql=/usr/bin/pg_config'

    Alors que j'avais recompilé avec --with-pgsql=/usr/local/pgsql/bin/pg_config'

    Car il n'y a pas de pg_config dans /usr/bin/

  9. #9
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par twoerly
    Pour info, mon phpinfo() montre une section pgsql sans indiquer la version

    Ce que je ne comprends pas c'est qu'il indique une commande de configuration
    './configure' (...) '--with-pgsql=/usr/bin/pg_config'

    Alors que j'avais recompilé avec --with-pgsql=/usr/local/pgsql/bin/pg_config'

    Car il n'y a pas de pg_config dans /usr/bin/
    votre php est sans doute correct mais il faut installer les librairies PHP pour Apache là où ce dernier s'attend à les trouver, et tant que vous ne le redémarrez pas, Apache indiquera la version de l'ancienne librarie dynamique…

    (regardez votre /etc/httpd/conf/httpd.conf … pour savoir comment Apache utilise PHP : via mod_php ou via une shared lib…)

  10. #10
    Membre éprouvé Avatar de Cyberbob002
    Inscrit en
    Mai 2003
    Messages
    140
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 140
    Par défaut
    As tu rechargé la configuration ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /etc/init.d/apache2 reload

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    Citation Envoyé par JeitEmgie
    votre php est sans doute correct mais il faut installer les librairies PHP pour Apache là où ce dernier s'attend à les trouver, et tant que vous ne le redémarrez pas, Apache indiquera la version de l'ancienne librarie dynamique…

    (regardez votre /etc/httpd/conf/httpd.conf … pour savoir comment Apache utilise PHP : via mod_php ou via une shared lib…)
    Comme indiqué plus haut, j'ai bien libphp4.so dans le répertoire /usr/local/apache2/modules
    et la ligne suivante dans mon httpd.conf

    LoadModule php4_module modules/libphp4.so

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    Citation Envoyé par Cyberbob002
    As tu rechargé la configuration ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /etc/init.d/apache2 reload
    J'ai fait un find / -name reload

    Je n'ai un reload que pour l'appli Webmin.
    Je n'ai pas de
    /etc/init.d/apache2

    J'utilise apachectl

  13. #13
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par twoerly
    J'ai fait un find / -name reload

    Je n'ai un reload que pour l'appli Webmin.
    Je n'ai pas de
    /etc/init.d/apache2

    J'utilise apachectl
    reload est un paramètre… pas un nom de script…
    et s'il n'y a pas de /etc/init.d/apache2 c'est peut-être qu'il s'appelle
    /etc/init.d/httpd


    (apachectl doit fonctionner aussi évidemment…)

  14. #14
    Membre éprouvé Avatar de Cyberbob002
    Inscrit en
    Mai 2003
    Messages
    140
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 140
    Par défaut
    Citation Envoyé par twoerly
    J'utilise apachectl
    Alors un petit
    apachectl graceful
    devrait être mieux

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    Citation Envoyé par Cyberbob002
    Alors un petit devrait être mieux
    apachectl graceful existe effectivement, mais ça ne change rien ...

    Enfin ... y'a pas de problème de syntaxe des fichiers de config

  16. #16
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par twoerly
    apachectl graceful existe effectivement, mais ça ne change rien ...

    Enfin ... y'a pas de problème de syntaxe des fichiers de config

    mais est-ce que la librairie libphp4.so utilisée par apache est bien la nouvelle ?

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Par défaut
    Merci JeitEmgie

    Désolé pour le délai de réponse, j'avais pris un long week end..
    En fait, je pense que tu avais raison. La dernière version du libphp4.so datait de novembre.

    J'ai fait une remise à jour de PHP 4 avec la dernière version 4.4.6
    Quasiment la même commande configure que ci dessus (avec --with-pgsql=/usr/local/pgsql/bin/pg_config)

    make et make install

    j'ai eu un petit souci au redémarrage de Apache puisqu'il a tenté de recréer le log apache_runtime_status alors qu'il existait déjà. J'ai viré ce fichier.

    Apache relancé, j'ai retesté mon appli et l'erreur décrite a disparu.

    Encore merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Wamp] Appel de fonction non défini
    Par morphine63 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 29/10/2006, 10h02
  2. Fonction non définie (alors qu'elle l'est) - Cocher toutes les cases
    Par navis84 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 22/09/2006, 12h02
  3. Réponses: 2
    Dernier message: 01/06/2006, 14h54
  4. id non défini alors qu'il est utilisé
    Par flambo88 dans le forum Langage
    Réponses: 11
    Dernier message: 15/01/2006, 01h36
  5. fonction non définie
    Par ston dans le forum Access
    Réponses: 11
    Dernier message: 12/12/2005, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo