私はNode.jsにアプリケーションをビルドしています。私はJavascriptでnoobです。JSで2回の間に時間があるかどうかを調べる
私はアプリケーションの検証をビルドしようとしていますが、イベントを挿入するmysqlデータベーステーブルを作成しましたが、これらのイベントは同時に実行できません。私のテーブルザッツ
:
replay_id
replay_hour_begin (varchar) (00:00:00)
replat_hour_end (varchar) (00:00:00)
挿入時間はパラメータを介して受信され、かつ同時に発生するデータベース上の任意のイベントがある場合、私はチェックしています。
そしてそれは、私は、ユーザー入力を検証するために構築された機能です:
function checkEvent(hour, callback){
connection.query('Select * from replay', function(err, rows, fields) {
if (err) callback(err, null)
else
var startTime = rows[0].replay_hour_begin;
var endTime = rows[0].replay_hour_end;
var insertedTime = hour;
var getStartTime = new Date();
var getEndTime = new Date();
var getInsertedTime = new Date();
getStartTime.setHours(startTime.split(":")[0]);
getStartTime.setMinutes(startTime.split(":")[1]);
getEndTime.setHours(endTime.split(":")[0]);
getEndTime.setMinutes(endTime.split(":")[1]);
getInsertedTime.setHours(insertedTime.split(":")[0]);
getInsertedTime.setMinutes(insertedTime.split(":")[1]);
console.log(getStartTime.getTime());
console.log(getEndTime.getTime());
console.log(getInsertedTime.getTime());
var valid = getStartTime.getTime() < getInsertedTime.getTime() && getEndTime.getTime() > getInsertedTime.getTime();
console.log(valid);
//callback(null,true);
});
}
挿入時間が占有されている場合は、変数のチェックがチェックされます。
しかし、有効な値を送信しても、私は常に「偽」を受け取ります。
私は間違っていますか?
ありがとうございます。