CCK: Dezimal Textfeld. Kommaeingabe wird nicht umgesetzt...?!
am 10.09.2008 - 14:15 Uhr in
Hallo,
ich habe mit CCK mehrere Dezimaltextfelder erstellt.
Erstes Problem:
Gebe ich nun 2,5 ein, wird das Komma nicht anerkannt und CCK speichert 25 in der Datenbank. Ein 2.5 wird erkannt.
Besteht die Möglichkeit das umzustellen?
Ich kann zwar 2.5 eingeben und dann über "Felder anzeigen" die Option "9.999,99" auswählen, allerdings würde ich gerne Fehler vermeiden wenn zB 2,5 doch eingeben wird und CCK nur 25 abspeichert.
Zweites Problem:
Wenn ich nun über "Felder anzeigen" die Option "9.999,99" auswähle, wird wenn ich vorher 5 eingeben habe, eine 5,00 angezeigt. Ich hätte die Nachkomma-Ausgabe lediglich für die Zahlen bei denen es auch notwendig ist, also wo ich bereits bei der Eingabe auch 2,xx eingeben habe. Versteht ihr was ich meine?
Besteht da in irgendeiner Weise eine Möglichkeit, die Probleme zu beheben?
Wäre wirklich toll, wenn jemand mir weiterhelfen könnte, stehe schon wieder auf dem Schlauch.
Vielen Dank euch schonmal!!
Grüße
Florian
- Anmelden oder Registrieren um Kommentare zu schreiben
Du hast ja schon gemerkt,
am 10.09.2008 - 16:20 Uhr
Du hast ja schon gemerkt, dass Du mit "Felder anzeigen" auch gleichzeitig einstellst, wie CCK die eingegebene Zahl interpretiert. Anzeige von "9.999,99" führt also dazu, dass "2,5" auch 2,5 bleibt und "2.5" eben 25.
Ich hab mal kurz in den Code geschaut, aber die Formatierung ist erstmal hart in number_field_formatter (cck/number.module) verdrahtet. Du kannst nur hintenrum über "theme_field" die ungeliebten Nullen abschneiden.
Viele Grüße
Edmund
------
Drupal Migrationen, Modul- und Themeentwicklung, Drupal Hosting - http://www.katp.de
Drupal Migrationen, Modul- und Themeentwicklung - http://www.klapper.de
Hallo Edmund, leider
am 10.09.2008 - 16:36 Uhr
Hallo Edmund,
leider funktioniert es nicht so wie du schreibst, das ist ja das dumme.
Also ich stelle vorher unter "Felder anzeigen", bei dem jeweiligen Feld ein, dass "9.999,99" angezeigt bzw. ausgeben werden soll als Format.
Nun erstelle ich neuen Inhalt und gebe in dem besagten Feld zB 2,5 ein. Schau ich mir den Node nun an, erscheint lediglich 25,00! Aber nicht wie eigentlich eingegeben 2,50! Verstehst du was ich meine. Wechsel ich nun in den Bearbeitungsmodus des Nodes, erscheint in dem Feld ebenfalls eine 25 und keine 2,5.
Lediglich wenn ich bei der Eingabe 2.5 schreibe, erhalte ich 2,50 bei der Ausgabe im Node.
Mein Anliegen ist nun wie ich ebenfalls bei der Eingabe bereits ein Komma verwenden kann, das scheint momentan unabhängig von den Einstellungen bei "Felder anzeigen" nicht zu funktionieren...
Lieben Gruß
Florian
Ich habe es extra bei mir
am 10.09.2008 - 18:29 Uhr
Ich habe es extra bei mir nochmal ausprobiert mit Drupal 5.9 und CCK 5.x-1.9. Wenn ich "9.999,99" einstelle, erhalte ich 25 bei Eingabe von "2.5". Ich weiß, dass hilft Dir nicht wirklich weiter, aber bei mir gehts ;)
Viele Grüße
Edmund
------
Drupal Migrationen, Modul- und Themeentwicklung, Drupal Hosting - http://www.katp.de
Drupal Migrationen, Modul- und Themeentwicklung - http://www.klapper.de
Und du erhälst was bei
am 10.09.2008 - 18:36 Uhr
Und du erhälst was bei Eingabe von 2,5? :D Wenn "9.999,99" eingestellt ist.
2,50
am 10.09.2008 - 18:41 Uhr
;)
Drupal Migrationen, Modul- und Themeentwicklung - http://www.klapper.de
und wieso geht das gute ding
am 10.09.2008 - 19:01 Uhr
und wieso geht das gute ding bei mir nicht. ebenfalls drupal 5.9. cck werde ich jetzt mal sicherheitshalber updaten.
so ich habe nun noch cck
am 10.09.2008 - 19:29 Uhr
so ich habe nun noch cck geupdatet und es hat sich nichts geändert.
kommatas werden nicht akzeptiert und wahrgenommen bei der eingabe...keiner eine idee?
nochmal ich. langsam komm
am 12.09.2008 - 10:57 Uhr
nochmal ich. langsam komm ich mir alleine vor :D
ich habe mal eine komplett frische drupal installation (5.10) draufgemacht und dann das neueste cck.
dann wieder neuen inhaltstyp erstellt und ein dezimal textfeld.
dann unter "felder anzeigen" die option "9.999,99" ausgewählt.
nun neuen inhalt erstellt, und 2,5 wieder ins eingabefeld eingetragen. und erneut wird lediglich 25 abgespeichert und das komma ignoriert. dann gegenprobe: 2.5 wird erkannt und in die db eingetragen und da option "9.999,99" ausgewählt, wird 2,5 ausgegeben!
kann doch nicht sein, dass nur ich hier ein problem damit habe?
könnten das bitte mal weitere testen, es wäre wirklich wichtig, habe bereits im englischsprachigen forum gepostet aber keinerlei antwort.
wäre wirklich dankbar und weitere hilfe.
grüße
florian
so neue informationen. die
am 13.09.2008 - 08:21 Uhr
so neue informationen.
die cck version von drupal6 soll eine kommaeingabe unterstützen, bzw man kann auswählen was anerkannt werden soll:
http://drupal.org/node/307433
allerdings soll die cck version für d5 dies in nicht absehbarer zukunft nicht erhalten.
einzige möglichkeit wäre laut dem kommentar ein patch für die d5 version.
kann ich diesen irgendwie selber erstellen, oder kann mir jemand hier behilflich sein?
ich benötige unbedingt die funktion der kommaeingabe, ich wäre euch wirklich dankbar, wenn mir hier einer weiterhelfen könnte...
habe folgenden patch
am 19.09.2008 - 20:04 Uhr
habe folgenden patch angewandt: http://drupal.org/node/118364
ging auch mit der d5 version.