현재 사용자가 제출 버튼을 클릭하면 insert
코드가 트리거되어 reports
함수에 대한 레코드가 삽입되는 응용 프로그램이 있습니다.일정 기간이 지난 후 데이터 삽입
지금 직면하고있는 문제는 사용자가 컴퓨터를 잘 아는 사람이 아니기 때문에 테이블의 데이터가 정확하지 않습니다. 다음은 데이터 캡처를 잘못 유발하는 몇 가지 예입니다.
사례 1 : 사용자가되면 이미 제출 (submit) 버튼을 데이터베이스에 insert
의 데이터를 클릭하지만, 사용자가 실수로 다시 다시 버튼을 insert
트리거를 제출하고 데이터베이스를 유발하는 다른 타임 스탬프 두 개의 동일한 레코드가 히트 약 5 ~ 10 초.
사례 2 : 사용자가 실제로 입력 한 첫 번째 레코드는 29/10/2013
이지만 사용자 키 입력은 28/10/2013
이고 다시 사용자가 다시 버튼을 눌러 올바른 하나는 29/10/2013
이고 하나의 트랜잭션에는 2 개의 레코드가 있습니다. 하나는 올바른 날짜이고 하나는 실수 날짜입니다.
insert
코드를 만드는 것이 가능 사용자가 제출 버튼을 명중 할 때마다 트리거 위의 코드가
$stmt = $db->prepare("INSERT INTO log (dob, log_datetime, log_count, amount) VALUES (?, ?, ?, ?)");
$stmt->bindParam(1, $userDate);
$stmt->bindParam(2, $now, PDO::PARAM_STR);
$stmt->bindParam(3, $cust_count);
$stmt->bindParam(4, $amount);
date_default_timezone_set('Asia/Kuala_Lumpur');
$now = date('Y-m-d H:i:s');
$cust_count = 1;
$amount = 10;
$stmt->execute();
, 예를
30sec
: 아래
코드입니다 ?
추가 정보
- 이 개발하는 응용 프로그램입니다 그리고 나는 이미 양식 유효성 검사 부분을 코딩으로, 테이블
- 그것은 양식 유효성 검사와는 아무 상관이없는에서 데이터베이스를 실행합니다. 내 질문이 입니다
- 시간의 특정 금액에
insert
쿼리를 실행할 수있는 방법은 내가 SO와 구글에서 검색
이 설정되어 있지만 나는 작업 할 관련 예제를 찾을 수 없습니다.
위의 두 가지 사례 시나리오를 수정할 수있는 방법을 제안 해주세요.
감사합니다.
어쩌면 당신이 나에게 분명히 말하지 않았어, 폼 유효성 검사 부분이 아닙니다. 내 데이터베이스 저장소 날짜는 1970 년 1 월 1 일부터 01/01/2021까지이며 사용자는 원하는 날짜를 추출하기 위해 각 날짜를 입력해야합니다. 앱이기 때문에이 기능에 대해 더 이상 설명 할 필요가 없습니다. 이제 내 질문은 mysql에 데이터를 저장하는 것이 어쨌든 특정 시간 (예 : 30 초)에'insert' 코드 트리거를 만드는 것인가? – Nescafe