Pb Apache: pb avec éèùàê
pimos
Messages postés
27
Statut
Membre
-
bob031 -
bob031 -
Bonjour,
J'ai un soucis avec Apache:
j'ai deux environnements identique avec une différence:
le premier env: _ENV["LANG"]=fr_FR
le second env : _ENV["LANG"]=en_US
PHP 4.2.3
Apache 1.3.26
Avec mon applis PHP:
1er env:
je saisie "testé" (insertion base) et l'affichage de la liste donne "testé"
2nd env:
je saisie "testé" (insertion base) et l'affichage de la liste donne "test?"
(l'env 2 bouffe les accents éàèùê)
Je pense donc que mon problème viend de la langue du serveur.
Comment puis-je modifier la langue de mon deuxième environnement?
Je rame depuis plusieurs jours donc si vous avez une piste, une idée... Je prends!
Merci
J'ai un soucis avec Apache:
j'ai deux environnements identique avec une différence:
le premier env: _ENV["LANG"]=fr_FR
le second env : _ENV["LANG"]=en_US
PHP 4.2.3
Apache 1.3.26
Avec mon applis PHP:
1er env:
je saisie "testé" (insertion base) et l'affichage de la liste donne "testé"
2nd env:
je saisie "testé" (insertion base) et l'affichage de la liste donne "test?"
(l'env 2 bouffe les accents éàèùê)
Je pense donc que mon problème viend de la langue du serveur.
Comment puis-je modifier la langue de mon deuxième environnement?
Je rame depuis plusieurs jours donc si vous avez une piste, une idée... Je prends!
Merci
A voir également:
- Pb Apache: pb avec éèùàê
- Apache open office gratuit - Télécharger - Suite bureautique
- Apache laragon - Télécharger - Divers Web & Internet
- Apache curl - Forum Linux / Unix
- Redemarrer apache ✓ - Forum Linux / Unix
- Apache office android - Guide
57 réponses
Oracle
oci8
OCI8 Support enabled
Revision $Revision: 1.169.2.3 $
Oracle Version 8.1
Compile-time ORACLE_HOME /produits/xoracl/put/prd/8.1.7
Libraries Used
oci8
OCI8 Support enabled
Revision $Revision: 1.169.2.3 $
Oracle Version 8.1
Compile-time ORACLE_HOME /produits/xoracl/put/prd/8.1.7
Libraries Used
je te donne la requête qui va bien pour connaître le NLS de ta base:
SELECT t1.value ||'_'|| t2.value ||'.'|| t3.value AS export_NLS_LANG FROM v$nls_parameters t1, v$nls_parameters t2, v$nls_parameters t3 WHERE t1.parameter='NLS_LANGUAGE' AND t2.parameter='NLS_TERRITORY' AND t3.parameter='NLS_CHARACTERSET';
cela ne fonctionne pas dans Oracle.
ni dans PHP:
Warning: OCIStmtExecute: ORA-00942: table or view does not exist in /applis/rincom/pur/htm/intracom/portail/administration/gestion.flashs.institutions.php on line 152
Warning: OCIFetchStatement: ORA-24374: define not done before fetch or execute and fetch in /applis/rincom/pur/htm/intracom/portail/administration/gestion.flashs.institutions.php on line 153
ni dans PHP:
Warning: OCIStmtExecute: ORA-00942: table or view does not exist in /applis/rincom/pur/htm/intracom/portail/administration/gestion.flashs.institutions.php on line 152
Warning: OCIFetchStatement: ORA-24374: define not done before fetch or execute and fetch in /applis/rincom/pur/htm/intracom/portail/administration/gestion.flashs.institutions.php on line 153
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Tu dis que tu as 2 env identiques mise à part la différence des langues.
Peux-tu exécuter cette commande pour tes 2 environnements: récupère le nom du user chargé du run de httpd (ligne User de ton httpd.conf), wwwrun chez moi:
Regarde le paramètre LANG
Peux-tu exécuter cette commande pour tes 2 environnements: récupère le nom du user chargé du run de httpd (ligne User de ton httpd.conf), wwwrun chez moi:
ps eww wwwrun
Regarde le paramètre LANG
env KO 120.92
ps eww www _=/usr/bin/ps LANG=fr_FR ...
phpinfo.php= _ENV["LANG"] en_US
-----------------------------------------------------------------------
env OK 151.191
ps eww www _=/usr/bin/ps LANG=en_US ....
phpinfo.php= _ENV["LANG"] LANG fr_FR
-----------------------------------------------------------------------
Et voilà autre chose!!!
ps eww www _=/usr/bin/ps LANG=fr_FR ...
phpinfo.php= _ENV["LANG"] en_US
-----------------------------------------------------------------------
env OK 151.191
ps eww www _=/usr/bin/ps LANG=en_US ....
phpinfo.php= _ENV["LANG"] LANG fr_FR
-----------------------------------------------------------------------
Et voilà autre chose!!!
j'en déduis que ce n'est pas ton environnement Apache qui met le souk, mais ton environnement php...
Tes environnements: sur deux serveurs différents ?
Quels sont les paramètres régionaux?
Regarde le paramètre RC_LANG dans ton fichier /etc/sysconfig/language
Quels sont les paramètres régionaux?
Regarde le paramètre RC_LANG dans ton fichier /etc/sysconfig/language
Je ne pense pas que ce soit une bonne piste.
Ton module php, est-ce toi qui l'a compilé, ou bien tu l'as récupéré par rpm ou autre. Peut-être que lors de la compil, le module prend le langage par défaut de la machine où ça compile...
Ton module php, est-ce toi qui l'a compilé, ou bien tu l'as récupéré par rpm ou autre. Peut-être que lors de la compil, le module prend le langage par défaut de la machine où ça compile...
le eww permet de connaître les variables et leur valeur de l'environnement lors du lancement de ton process
Je viens de compiler php avec un serveur en en_US, puis fait tourner avec fr_FR: c'est bien cette dernière valeur qui est prise.
D'après mes différents tests, php prend la même valeur LANG que le user faisant tourner apache.
Es-tu bien sûr que le paramètre LANG de ton user http est bien fr_FR ?
D'après mes différents tests, php prend la même valeur LANG que le user faisant tourner apache.
Es-tu bien sûr que le paramètre LANG de ton user http est bien fr_FR ?
Pour connaître les paramètre locaux de ta machine:
# locale LANG=fr_FR.UTF-8 LC_CTYPE="fr_FR.UTF-8" LC_NUMERIC="fr_FR.UTF-8" LC_TIME="fr_FR.UTF-8" LC_COLLATE="fr_FR.UTF-8" LC_MONETARY="fr_FR.UTF-8" LC_MESSAGES="fr_FR.UTF-8" LC_PAPER="fr_FR.UTF-8" LC_NAME="fr_FR.UTF-8" LC_ADDRESS="fr_FR.UTF-8" LC_TELEPHONE="fr_FR.UTF-8" LC_MEASUREMENT="fr_FR.UTF-8" LC_IDENTIFICATION="fr_FR.UTF-8" LC_ALL=
env KO 120.92
/> locale
LANG=fr_FR
LC_COLLATE="fr_FR"
LC_CTYPE="fr_FR"
LC_MONETARY="fr_FR"
LC_NUMERIC="fr_FR"
LC_TIME="fr_FR"
LC_MESSAGES="fr_FR"
LC_ALL=
------------------------------------
env OK 151.191
$ locale
LANG=en_US
LC_COLLATE="en_US"
LC_CTYPE="en_US"
LC_MONETARY="en_US"
LC_NUMERIC="en_US"
LC_TIME="en_US"
LC_MESSAGES="en_US"
LC_ALL=
-------------------------------------------------------
=> la vérité est ailleur...
/> locale
LANG=fr_FR
LC_COLLATE="fr_FR"
LC_CTYPE="fr_FR"
LC_MONETARY="fr_FR"
LC_NUMERIC="fr_FR"
LC_TIME="fr_FR"
LC_MESSAGES="fr_FR"
LC_ALL=
------------------------------------
env OK 151.191
$ locale
LANG=en_US
LC_COLLATE="en_US"
LC_CTYPE="en_US"
LC_MONETARY="en_US"
LC_NUMERIC="en_US"
LC_TIME="en_US"
LC_MESSAGES="en_US"
LC_ALL=
-------------------------------------------------------
=> la vérité est ailleur...
Bonjour,
j'ai beau retourner le pb dans tous les sens, je pense que qqchose nous échappe.
Je te propose 2 tests:
1/ Connexion à ta base par sqlplus, et insérer une ligne (par la requête INSERT INTO) avec des données accentuées. Regarder le résultat. Si OK passer au test 2. Sinon, ça délire au niveau base (au fait, ta base est-elle située sur le même serveur?)
2/ Exécute ton script d'insertion en BDD via php en ligne de commande, avec un user différent de wwwuser.
Si résultat OK, le pb vient de Apache/php. Sinon, c'est bien php.
j'ai beau retourner le pb dans tous les sens, je pense que qqchose nous échappe.
Je te propose 2 tests:
1/ Connexion à ta base par sqlplus, et insérer une ligne (par la requête INSERT INTO) avec des données accentuées. Regarder le résultat. Si OK passer au test 2. Sinon, ça délire au niveau base (au fait, ta base est-elle située sur le même serveur?)
2/ Exécute ton script d'insertion en BDD via php en ligne de commande, avec un user différent de wwwuser.
Si résultat OK, le pb vient de Apache/php. Sinon, c'est bien php.