我在格式化日期时遇到问题。 在我的addstudent.jsp文件中,我要求用户ti输入他们的出生日期。这我正在使用输入类型=“文本”。添加格式输入是dd-mm-yyyy。现在我必须以yyyy-mm-dd格式将日期存储为yyyy-mm-dd格式的mysql存储。 我在addprocess.jsp文件中这样做了。但是我不明白有些不对劲。当我把08-05-2009作为输入时,我得到2009-01-08 作为输出存储在mysql数据库中。我究竟做错了什么? 这是我的addstudent.jsp文件。
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Adding Student</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
function validateform(){
var errorString="";
var name=document.myform.name.value;
var email=document.myform.email.value;
var parentemail=document.myform.parentemail.value;
if (name==null || name=="" || !(/^[A-Za-z\s]+$/.test(name))){
document.getElementById("error").innerHTML=errorString+"Name can have only alphabets and spaces";
return false;
}
function validateEmail(email){
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)| (".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}
if(!validateEmail(email)){
document.getElementById("error").innerHTML=errorString+" Your email is not valid";
return false;
}
if(!validateEmail(parentemail)){
document.getElementById("error").innerHTML=errorString+" Your parent's email is not valid";
return false;
}
}
</script>
</head>
<body>
<div id="outer">
<%@include file="header.jsp" %>
<%@ page import="java.util.*"%>
<%@ page import="java.util.regex.*"%>
<%@page import="java.sql.*"%>
<div id="error"></div>
<div id="main">
<div id="box">
<form name="myform" method="post" action="addprocess.jsp" onsubmit="return validateform();">
<table>
<tr><td style="color:navy;"><B> Login Form</B></td> </tr>
<tr><td><br></td></tr>
<tr><td>User Name:</td><td><input type="text" name="name" placeholder="Enter your name"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Email Id:</td><td><input type="text" name="email" placeholder="Enter Email ID"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Parent Email Id:</td><td><input type="text" name="parentemail" placeholder="Enter Parent's Email ID"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Date Of Birth:</td><td><input type="text" name="dateofbirth" placeholder="dd-mm-yyyy"/></td></tr>
<tr><td><br></td></tr>
<tr><td>Address:</td><td><input type="text" name="address" placeholder="Enter your address"/></td></tr>
<tr><td><br></td></tr>
<tr><td> </td><td><input type="submit" value="Sign in"></td></tr>
</table>
</form>
<br>
</div>
</div>
</div>
</body>
</html>
这是addprocess.jsp文件
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<%@ page import="java.util.*"%>
<%@ page import="java.util.regex.*"%>
<%@page import="java.sql.*"%>
<%@page import="java.text.ParseException"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.text.DateFormat"%>
<%@page import="java.util.Date"%>
%>
<%
String name=request.getParameter("name");
String email=request.getParameter("email");
String parentemail=request.getParameter("parentemail");
SimpleDateFormat format = new SimpleDateFormat("dd-mm-yyyy");
java.util.Date util_Date = format.parse( request.getParameter("dateofbirth") );
java.sql.Date dateOfBirth = new java.sql.Date( util_Date.getTime() );
System.out.println(dateOfBirth);
String address=request.getParameter("address");
%>
</body>
</html>
提前致谢。
答案 0 :(得分:1)
&#34;毫米&#34;在日期格式是分钟; &#34; MM&#34;在日期格式是月。