Pages : 1
#1 Le 10/11/2006, à 23:34
- crazykangourou
format de date avec Oracle 9i
Bonsoir,
J'ai une application php + oracle 9i.
Lorsque je fais une requete sous php sur une colonne de type date, j'ai 2 formats différents en fonction de la machine où j'ai installé l'application php qui attaque toujours la même base de données.
Sur une machine Red HAT j'ai un format de date du type yyyy-mm-dd, alors que sur une machine nouvellement installée ubuntu 6.10, le format de date est dd-NOV-06, hallucinant.
Comment modifier ce format sans toucher à la requete et faire to_char(ma_date,'DD/MM/YYYY'). Je ne peux pas me permettre ca car nous avons implémenté une fonction PHP qui converti yyyy-mm-dd en dd/mm/yyyy.
Merci d'avance
#2 Le 11/11/2006, à 00:02
- nikko
Re : format de date avec Oracle 9i
Bonsoir,
J'ai une application php + oracle 9i.
Lorsque je fais une requete sous php sur une colonne de type date, j'ai 2 formats différents en fonction de la machine où j'ai installé l'application php qui attaque toujours la même base de données.Sur une machine Red HAT j'ai un format de date du type yyyy-mm-dd, alors que sur une machine nouvellement installée ubuntu 6.10, le format de date est dd-NOV-06, hallucinant.
Comment modifier ce format sans toucher à la requete et faire to_char(ma_date,'DD/MM/YYYY'). Je ne peux pas me permettre ca car nous avons implémenté une fonction PHP qui converti yyyy-mm-dd en dd/mm/yyyy.
Merci d'avance
Ce n'est pas vraiment hallucinant. C'est la date même qui est stockée, ta fonction php manipule une chaine de caractères représentant une date. Ta requête te renvoie cette représentation, qui varie en fonction de l'environnement. A priori sur tes machines, les variables NLS_LANG et/ou NLS_DATE_FORMAT ne sont pas les mêmes.
En cherchant NLS_LANG php, je voie 2 possibilités :
positionner les variables pour le lancement d'apache.
Ou utiliser les fonctions oracles dans php : http://fr3.php.net/oci8
Je te laisse regarder de plus près. Je ne suis pas expert apache, et je ne connais pas php.
Par contre, au boulot, toutes nos requêtes formate les dates avec des to_char() pour s'affranchir de ce problème.
Nicolas
Hors ligne
Pages : 1