5 messages in org.openoffice.fr.progRe: Re: [prog] Insérer une valeur ave...
FromSent OnAttachments
Arnaud LAURENSON - Costes GestionAug 24, 2005 1:04 am 
Francois GattoAug 24, 2005 5:56 am 
Arnaud LAURENSON - Costes GestionAug 24, 2005 6:03 am 
Alex ThurgoodAug 25, 2005 1:28 am 
Matthieu COUTIEREAug 25, 2005 1:38 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: Re: [prog] Insérer une valeur avec virgule dans un enregistrementActions...
From:Arnaud LAURENSON - Costes Gestion (arna@costes-gestion.net)
Date:Aug 24, 2005 6:03:29 am
List:org.openoffice.fr.prog

Merci pour votre aide mais j'ai en effet déjà essayé le changement en DECIMAL,
sans succès. J'ai posté il y a quelque temps une solution avec ReplaceString et
ça fonctionne. Arnaud

Bonjour,

Arnaud LAURENSON - Costes Gestion a écrit :

Bonjour,

J'essaie en vain de faire un INSERT dans mon code avec une valeur numérique avec virgule. Ma base est sous MySQL, le champ concerné est de type DOUBLE et la valeur à insérer vaut par exemple 14,1. Le problème est que cette virgule est interprétée comme celle qui sépare les arguments du INSERT (insert into toto (a,b,c) values ("michel",14,1,"paris")). Avec 14.4, ça passe. Le problème est que ma valeur est stockée dans un champ numérique et le format avec la virgule est imposé. Existe-t-il une fonction pour remplacer cette virgule par un point ? Merci d'avance pour vos réponses. Arnaud Laurenson

Peut-être que l'emploi du type DECIMAL(n,m) eut-il été préférable.

Mais puisque la base est créée avec un champ DOUBLE, je crois que le mieux serait de le conserver et de procéder normalement.

Lors de la lecture de la donnée, il suffit alors de faire une conversion de format et de traiter la donnée ainsi transformée. en PHP on peut faire ainsi :

<?php $nombre = 1234.56; $nombre_conversion = number_format($nombre, 2, ',', ' '); ?>

le résultat obtenu sera 1 234,56

ce qui a pour effet de remplacer le point décimal par une virgule et de rajouter un espace séparateur de milliers.

Espérant avoir éclairé un peu.