mình đang lập trình web = php và html và js mình muốn viết code để kiểm tra người dùng nhập dd/mm/yyyy có đúng ko để insert vào mySQL chẳng hạn như khi người ta nhập 31/13/2010 thì báo sai hay 30/2/2010 thì báo sai mong mọi người chỉ giúp xin cám ơn
Dùng regular expression: Code cho Javascript. Tùy chỉnh error nhé: <script> function check_valid_date(datevalue) { var pattern = new RegExp(/^[0-3][0-9]\/(0|1)[0-9]\/(19|20)[0-9][0-9]$/); if(datevalue.match(pattern)) { var date_array =datevalue.split('/'); var day = date_array[0]; // Attention! Javascript consider months in the range 0 - 11 var month = date_array[1] - 1; var year = date_array[2]; source_date = new Date(year,month,day); if(year != source_date.getFullYear()) { alert('Year is not valid!'); return false; } if(month != source_date.getMonth()) { alert('Month is not valid!'); return false; } if(day != source_date.getDate()) { alert('Day is not valid!'); return false; } } else { alert('Date format is not valid!'); return false; } return true; } </script> Thêm PHP, nếu user tắt Javascript: $date=$_POST[...]; // get variable if(!preg_match("/^[0-3]\d\/[0-1]\d\/(19|20)\d{2}$/",$date)) { //error not in valid format } list($day,$month,$year)=explode("/",$date); if(ckdate($month,$day,$year)) { //not valid date }