afbeelding van jo.w

Datumveld in webform geeft foutmeldingen

Ik gebruik in D8 een datumveld in een webform. Het datumveld staat ingesteld op d/m/y.

Hij leest het blijkbaar als m/d/y waardoor hij in een aantal gevallen (18/06/1942 bijvoorbeeld) een foutmelding geeft.

Iemand een idee hoe het op te lossen?

BijlageGrootte
Image icon 2017-05-05_08-46-43.png5.95 KB
Drupalversie: 
8.x
Auteur: 
jo.w
afbeelding van be-web
Door be-web op 5 mei, 2017 - 11:46

Wat is de foutmelding? Komt de foutmelding niet van het jaartal? Jaartal in 4 cijfers is hoofdletter Y.

-----
Met vriendelijke groet,
Hans Kuiters
BE-WEB

afbeelding van jo.w
Door jo.w op 6 mei, 2017 - 11:09

In mijn posting stond het als y ipv Y. Maar bij de instellingen staat het goed. Foutmelding ...datum must be a valid date. Ik denk toch dat 18/06/1942 een geldige invoer is. Als je er dan 06/15/1942 van maakt slaat hij het wel op. Ik heb de indruk als de dag groter is dan 12 dat hij een foutmelding geeft.

Jo

afbeelding van Niek Kloots
Door Niek Kloots op 6 mei, 2017 - 17:00

Heb jij in de datuminstellingen bij .../admin/config/regional/date-time het wel ingesteld als d/m/Y ?

afbeelding van jo.w
Door jo.w op 9 mei, 2017 - 12:52

Yep. Het eigenaardige is dat als je bijvoorbeeld 06/18/1942 ingeeft (omdat er gezegd wordt dat 18/06/1942 een foutieve datum is) hij het toch opslaat als 18/06/1942.

Jo

afbeelding van Niek Kloots
Door Niek Kloots op 9 mei, 2017 - 13:12

bij ..../admin/config/regional/date-time/locale alles per taal goed ingesteld?

afbeelding van jo.w
Door jo.w op 10 mei, 2017 - 08:47

Die pagina heb ik niet. Op admin/config/regional/date-time kan ik 3 datuminstellingen aanpassen (long, medium en short en die zijn aangepast), de andere (fallback format, diverse HTML-formaten) heb ik enkel een vertaalknop.

Jo

afbeelding van Niek Kloots
Door Niek Kloots op 10 mei, 2017 - 14:31

In D7 heb ik 4 werkende tabbladen onder de link .../admin/config/regional/date-time
[Op .../admin/config/regional/settings staat mijn week beginnen ingesteld op maandag en aangevinkt: gebruik ISO-8601 weeknummers]

.../admin/config/regional/date-time (nl vertaling: Soorten)
.../admin/config/regional/date-time/formats (nl vertaling: Formaten)
.../admin/config/regional/date-time/locale (nl vertaling: Lokaliseren (waar ik het per taal kan instellen))
.../admin/config/regional/date-time/date-views (nl vertaling: Datum-Overzichten (met voorbeelden))

Wat gebeurt er als je handmatig de link .../admin/config/regional/date-time/locale intikt? Ga je er dan niet heen?

afbeelding van be-web
Door be-web op 10 mei, 2017 - 15:09

Jo zit in D8. Zie openingspost.

-----
Met vriendelijke groet,
Hans Kuiters
BE-WEB

afbeelding van be-web
Door be-web op 10 mei, 2017 - 11:22

Kun je een eigen format aanmaken bij admin/config/regional/date-time en die gebruiken in je formulier?

-----
Met vriendelijke groet,
Hans Kuiters
BE-WEB

afbeelding van be-web
Door be-web op 10 mei, 2017 - 15:23

Ik heb even getest op dev in mijn eigen site, hier werkt het goed.
Laatste versie D8 + Webform (en wat andere modules).
Modules Webform + Webform UI ingeschakeld.
Datumveld toegevoegd.
Datumnotatie in het element: Custom > d-m-Y

In formulier geeft bij focus op datumveld een kalender popup. Invoer bijv. 18-6-1942. Gaat goed. Maar ook met handmatige invoer gaat het goed.

Maar nu: getest met d/m/Y. Met slashes dus. 18/6/1942. En dat blijkt niet goed te gaan. Ook niet met 18/06/1942.

Heb je hier wat aan?

-----
Met vriendelijke groet,
Hans Kuiters
BE-WEB

afbeelding van be-web
Door be-web op 10 mei, 2017 - 15:37

Aanvuling: OSX, Firefox gaat wel goed, Safari niet. Chrome maakt het veld dd-mm-jjjj, maar insturen gaat ook hier goed. Lijkt dus op een browserprobleem. Dit vind ik in de issue queue:
https://www.drupal.org/node/2875096

-----
Met vriendelijke groet,
Hans Kuiters
BE-WEB

afbeelding van jo.w
Door jo.w op 12 mei, 2017 - 10:30

Hier enkel getest met FF.

Jo

afbeelding van belba
Door belba op 19 mei, 2017 - 16:54

Edit de date/time element of voeg het toe, de datumweergave staat standaard aangegeven, druk eronder op custom en vul in dmy (kleine letters voor cijferweergave) je kan elk gewenste weergave maken met de php date/time functies zie daarvoor : http://php.net/manual/en/function.date.php

Via source/yaml kan het ook gewijzigd worden, maar dan wel weten wat je doet!

Succes, Jan

afbeelding van jo.w
Door jo.w op 20 mei, 2017 - 12:43

't Is opgelost door ipv d/m/Y d-m-Y te gebruiken.

Jo

Bookmark and Share

Drupal is een geregistreerd merk van Dries Buytaert. | Powered by Pantheon.

Drupal.be/Drupal.nl is de website van de Nederlandstalige Drupalgemeenschap.