2017-02-09 7 views
0

여기에 약간 문제가 있습니다. 저는 PHP와 JS에 익숙하지 않습니다. 내부에 MySQL 데이터베이스가있는 PHP 코드가 있습니다. JS 파일에서 나는 사용자의 입력 날짜가 오늘 날짜보다 빠르거나없는지를 확인하는 코드를 작성했다. 이제 모든 사용자를 데이터베이스에 추가하지만 오늘 날짜보다 이전에 입력 한 사용자 만 추가해야합니다 (TRUE if 문을 사용하는 사용자 만 추가). 어떻게해야합니까? 어떤 도움을 주셔서 감사합니다.날짜가 오늘 날짜보다 늦으면 데이터베이스에 사용자를 추가하지 않는 방법은 무엇입니까?

if (x.getTime() < today.getTime()) { 
    alert ("Employees has been succesfully added to the database"); 
} 
else 
{ 
    alert ("You have entered date which is later than todays date. Re-enter it"); 
} 
} 

가 여기 내 PHP 코드 :

<?php 
try { 
$db = new PDO('mysql:host=127.0.0.1;dbname=employees;charset=utf8','root',''); 
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 

if (isset($_POST['Submit'])) { 
$name = $_POST['name']; 
$surname = $_POST['surname']; 
$employmentDate = $_POST['employmentDate']; 

$insert = $db->prepare("INSERT INTO employee (name,surname,employment_date) VALUES (:name,:surname,:employmentDate)"); 

$insert->bindParam(':name',$name); 
$insert->bindParam(':surname',$surname); 
$insert->bindParam(':employmentDate',$employmentDate); 
$insert->execute(); 
} 
} 
catch (PDOException $e) { 
echo "There is something wrong with the database".$e->getMessage(); 
die(); 
} 
?> 
+0

날짜는 클라이언트에서 오는 신뢰하지해야 moment.js 사용, 인생을 더 쉽게 확인하려면 http://www.w3schools.com/js/js_date_methods.asp

, 당신은 아무 생각이 없다 생성 된 시간 또는 호스트가 설정된 시간과 날짜. * x * 및 * today *는 무엇입니까? 나는 그들이 날짜라고 생각하지만, 어떻게 생성 되는가? – RobG

+0

조금 더 포함시킬 수 있습니까? 귀하의 PHP 코드는 데이터가 DB에 실제로 삽입되는 위치라고 가정합니다. PHP 코드에이 체크를 넣고 날짜가 맞으면 SQL 인서트 만 호출하면 어떨까요? – mparis

+0

PHP 코드 – user7435747

답변

0
var today, someday, text; 
today = new Date(); 
someday = new Date(); 
someday.setFullYear(2100, 0, 14); 

if (someday > today) { 
    alert("Today is before January 14, 2100."); 
return; 
} 
    ...Database insert Code here 

편집 내가 생각 귀하의 질문에 대답하는

다음은 JS 코드 내 일부입니다. 올바른 범위 블록에있는 경우 데이터베이스 추가를 호출해야합니다.

체크 아웃 W3 학교 : 그것이 얼마나 당신이 https://momentjs.com/

+0

을 추가했습니다. JS 코드는 사용자의 입력 날짜 (PHP 파일에있는 whch)가 오늘보다 늦지 않았고 결과가 인쇄되는지 아닌지를 확인합니다. 내 생각을 이해하지 못했던 것 같아. – user7435747

+0

[JavaScript *와 두 날짜 비교하기] (http://stackoverflow.com/questions/492994/compare-two-dates-with-javascript)에 대한 답변에없는 내용이 여기에 있다고 생각하지 않습니다. – RobG

+0

날짜 유효성 검사가 실패하거나 db 인서트를 올바른 범위에두면 종료해야합니다. 당신은 당신의 데이터베이스 코드가 IF 블록 아래에 있다고 추측합니다. 그러므로 항상 발사됩니다. – Dys1