Fork me on GitHub






SQL type float en français
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
Bonjour,
Il semble qu'il y ai un gros bug avec les nombres flottants.
J'utilise rarement ce type de champ du coup je n'ai ramais rencontré ce problème.

en version française la virgule des nombres flottant n'est pas transformée en point, du coup erreur sql.

Pour régler le problème j'ai modifié dans le fichier "class\model\write.php" ligne 217

case XOBJ_DTYPE_FLOAT:
$cleanv = (float)$cleanv;

par
case XOBJ_DTYPE_FLOAT:
$cleanv str_replace(',''.', (float)$cleanv);


Pas sur que ce soit la bonne solution, mais ça règle mon problème.
D’ailleurs il doir y avoir le même problème sur le cas suivant:

case XOBJ_DTYPE_DECIMAL:
$cleanv str_replace(',''.', (float)$cleanv);


Ce qui me surprend c'est que ce bug ne soit pas remonté depuis le temps que xoops existe, à moins qu'il y ai un truc à faire que je ne connais pas.
JJDai



Posté le : 01/10/2021 21:10

Ne pas perdre patience, même si cela semble impossible, c'est déjà de la patience.
Origami
Conseil des Sages
Sur gitHub
Partager Twitter Partagez cette article sur GG+
Re: SQL type float en français
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
J'ai tenter un
setlocale(LC_NUMERIC'fr_FR');

Mais ça n'a pas d'effet.

Posté le : 01/10/2021 21:33

Ne pas perdre patience, même si cela semble impossible, c'est déjà de la patience.
Origami
Conseil des Sages
Sur gitHub
Partager Twitter Partagez cette article sur GG+
Re: SQL type float en français
Admin Frxoops
Inscrit: 04/03/2011 09:10
De Lot
Messages: 2837
ce qui expliquerai les bugs divers avec adslight

dans le temps, enfin du temps de la 2.5.7, quand j'ai créé miniboutique, ça fonctionnait correctement.

il y avait un fichier qui gérait les locales (xoops_locales je crois)

Posté le : 02/10/2021 18:57
Partager Twitter Partagez cette article sur GG+
Re: SQL type float en français
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
je n'ai pas trouvé de xoops_locales mais le fichier:
language\french\locale.php
ligne 24 on trouve:
setlocale(LC_ALL'fr_FR');

Mais à priori ça n'a pas d'effet.
Je continue mes investigations.

Posté le : 02/10/2021 19:55

Ne pas perdre patience, même si cela semble impossible, c'est déjà de la patience.
Origami
Conseil des Sages
Sur gitHub
Partager Twitter Partagez cette article sur GG+
Re: SQL type float en français
Team FrXoops
Inscrit: 14/05/2004 22:32
Messages: 2554
Il y a une classe
class XoopsLocal extends XoopsLocalAbstract
pour chaque langue hérité de :
class XoopsLocalAbstract
mais je n'ai pas l'impression qu'elle soit utilisée pour les nombres flottants. Elle concerne surtout les date semble-t-il.

Posté le : 02/10/2021 20:06

Ne pas perdre patience, même si cela semble impossible, c'est déjà de la patience.
Origami
Conseil des Sages
Sur gitHub
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

54 Personne(s) en ligne (34 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 54 | Plus ...