How to convert a user entered date (dd/mm/yy) into a format for a mysql database (yyyy/mm/dd)?

Posted on 2006-07-12
Last Modified: 2012-08-13
An HTML form requires the user to enter a date. As this is uk, I would like the user to be able to enter in a format - dd/mm/yy. I am not familiar enough with the java Date classes to be able to convert this into a format suitable to be entered into a mysql database. Do I need to parse the String and create a Date object first before using SimpleDateFormat?  Would appreciate some assistance. Thank you.
Question by:SimonAllen
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
LVL 35

Expert Comment

ID: 17089554
Use the SimpleDateFormat:

SimpleDateFormat sdf = new SimpelDateFormat("YYYY/MM/dd");
Date d = sdf.parse(<date from form>);
LVL 35

Expert Comment

ID: 17089558

> SimpleDateFormat sdf = new SimpelDateFormat("YYYY/MM/dd");

should be

SimpleDateFormat sdf = new SimpelDateFormat("yyyy/MM/dd");
LVL 35

Expert Comment

ID: 17089562
> Do I need to parse the String and create a Date object first before using SimpleDateFormat?

No, just get the String from the HTML form and parse it liek I did in my example. Then you can create a date object to insert into the database with the new format (yyyy/mm/dd)
SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

LVL 10

Expert Comment

ID: 17089565
SimpleDateFormat sdf = new SimpelDateFormat("dd/mm/yy");
java.util.Date d = sdf.parse(<date from form>);

to insert this date into your database,

java.sql.Date date = new java.sql.Date ( d.getTime () ) ;

LVL 10

Accepted Solution

mukundha_expert earned 45 total points
ID: 17089576
actually it should be ,

SimpleDateFormat sdf = new SimpelDateFormat("dd/MM/yy");
LVL 35

Assisted Solution

girionis earned 80 total points
ID: 17089587
> SimpelDateFormat("dd/mm/yy");

Bah... you are right, this is the format in the form... I thought the other way round.
LVL 35

Expert Comment

ID: 17089679
> As this is uk, I would like the user to be able to enter in a format - dd/mm/yy

If you are talking about entering the date in the proper format in the form, then you should use JavaScript to do it:
LVL 86

Expert Comment

ID: 17090338
You would be better off not allowing the user to type anything at all, or you may get errors

Author Comment

ID: 17091801
Thank you guys - your solution works of course. By way of explanation (for CEHJ) the application is designed to allow pilots to log their flying hours so the date entered by the user will not necessarily be the current date. Also, it did occur to me that I do not have to use a Date object at all. I could transform the string from the form(dd/mm/yy) to another string(yyyy/mm/dd) using java's substring method. This could be entered into the mysql database as is. Not quite sure which method is best yet. Many thanks anyway, Simon

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This was posted to the Netbeans forum a Feb, 2010 and I also sent it to Verisign. Who didn't help much in my struggles to get my application signed. ------------------------- Start The idea here is to target your cell phones with the correct…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question