>백엔드 개발 >PHP 튜토리얼 >jQuery Datepicker의 날짜를 MySQL 데이터베이스에 올바르게 삽입하는 방법은 무엇입니까?

jQuery Datepicker의 날짜를 MySQL 데이터베이스에 올바르게 삽입하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-28 07:15:12464검색

How to Properly Insert Dates from a jQuery Datepicker into a MySQL Database?

PHP mysql 날짜 삽입 형식

'MM/DD/YYYY' 형식의 jQuery 날짜 선택기를 사용하여 날짜를 삽입하는 경우 MySQL 데이터베이스에서는 삽입된 날짜가 '0000-00-00 00:00:00'으로 저장되면서 오류가 발생할 수 있습니다. 이 문제는 'MM/DD/YYYY' 형식이 MySQL에서 유효한 날짜 리터럴로 인식되지 않기 때문에 발생합니다.

날짜 및 시간 리터럴에 대한 MySQL 설명서에 따르면 MySQL은 다음 형식의 DATE 값을 인식합니다.

  • 'YYYY-MM-DD' 또는 'YY-MM-DD'('/'와 같은 구분 기호가 있거나 없음, '-' 또는 '.')
  • 'YYYYMMDD' 또는 'YYMMDD'(구분자 없음)
  • 날짜로 적합한 경우 YYYYMMDD 또는 YYMMDD 형식의 숫자

이 문제를 해결하려면 다음을 탐색해 보세요. 옵션:

  1. PHP의 DateTime 객체를 사용하여 날짜 변환:

jQuery datepicker 문자열에서 DateTime 객체 생성:

$date = \DateTime::createFromFormat('m/d/Y', $_POST['date']);

그런 다음 날짜 형식을 지원되는 형식으로 지정하세요. 형식:

$date_string = $dt->format('Y-m-d');
  1. MySQL의 STR_TO_DATE() 함수 사용:

STR_TO_DATE를 사용하여 jQuery 날짜 선택기 문자열을 MySQL 호환 형식으로 변환합니다. () 함수:

INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
  1. 문자열 수동 조작:

jQuery datepicker 문자열을 월, 일, 연도 부분으로 분할한 다음 MySQL 호환 생성 문자열:

$parts = explode('/', $_POST['date']);
$mysql_date = "$parts[2]-$parts[0]-$parts[1]";
  1. jQuery datepicker 구성:

dateFormat 또는 altField altFormat을 사용하여 지원되는 형식으로 날짜를 출력하도록 datepicker를 구성합니다. 옵션:

$( "selector" ).datepicker({
    dateFormat: "yyyy-mm-dd"
});

또는

$( "selector" ).datepicker({
    altField: "#actualDate"
    altFormat: "yyyy-mm-dd"
});

주의:

Prepared 문을 사용하여 SQL 삽입을 방지하는 것이 중요합니다. 또한 날짜 저장을 위해 MySQL에서 DATE 데이터 유형을 사용하는 것을 고려해 보십시오. 이는 이 목적을 위해 특별히 설계되었기 때문입니다.

위 내용은 jQuery Datepicker의 날짜를 MySQL 데이터베이스에 올바르게 삽입하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.