시험 날짜, 시간 및 날짜를 표시하는 드롭 다운 메뉴가 있는데 시험 날짜가 현재 날짜 또는 시간에서 전달 된 경우 텍스트가 빨간색으로 표시되고 그렇지 않으면 텍스트가 녹색으로 표시됩니다. 나는 데드롭 다운의 텍스트는 녹색이 아니어야합니다.
문제가 있음을 현재 날짜가 2012년 10월 11일입니다 (오늘입니다) 그리고 만약 시험이 날짜 아래 시간이있는 경우 :
2012년 10월 11일, 16:00 : 00
녹색으로 표시되지 않고 빨간색으로 텍스트가 표시됩니다. 문제는 현재 시간을 인식하지 못한다는 것입니다. 현재 날짜가 현재 날짜이므로 빨간색이어야하지만 현재 시간이 현재 날짜를 경과하지 않았으므로 녹색이어야합니다.
데이터베이스는 날짜를 2012-11-10으로 저장하고 데이터베이스의 시간은 16:00:00으로 저장합니다. 아래 언급 한 바와 같이 드롭이 저장되는 동안 :
<style>
.red{ color:red; }
.green{ color:green; }
</style>
...
$now = date("Y-m-d h:i:s");
while ($sessionqrystmt->fetch()) {
if(strtotime($now) > strtotime($dbSessionDate)){
$class = 'red';
} else {
$class = 'green';
}
$sessionHTML .= sprintf("<option value='%s' class='%s'>%s - %s - %s</option>", $dbSessionId, $class, $dbSessionName, date("d-m-Y",strtotime($dbSessionDate)), $dbSessionTime) . PHP_EOL;
}
$ : 2012년 10월 11일, 아래
16시 0분 0초 코드입니다 지금 현재 날짜와 시간이어야하며, $ dbSessionDate는해야 2012년 10월 11일
UPDATE :
$sessionHTML = '<select name="session" id="sessionsDrop">'.PHP_EOL;
$sessionHTML .= '<option value="">Please Select</option>'.PHP_EOL;
$now = date("Y-m-d H:i:s");
echo strtotime($now).'<br>';
echo strtotime('10-11-2012, 16:00:00');
while ($sessionqrystmt->fetch()) {
if(strtotime($now) > strtotime($dbSessionDate)){
$class = 'red';
} else {
$class = 'green';
}
$sessionHTML .= sprintf("<option value='%s' class='%s'>%s - %s - %s</option>", $dbSessionId, $class, $dbSessionName, date("d-m-Y",strtotime($dbSessionDate)), date("H:i",strtotime($dbSessionTime))) . PHP_EOL;
}
$sessionHTML .= '</select>';
$assessmentform = "<form action='".htmlentities($_SERVER['PHP_SELF'])."' method='post'>
<p><strong>Assessments:</strong> {$sessionHTML} </p>
</form>";
은 '아마 JQuery와 및 자바 스크립트 태그를 제거하고, PHP 태그를 추가해야합니다. – broofa
@broofa : 이미 그렇게했습니다. – Aziz
@CMB :'strtotime ($ now)'과'strtotime ($ dbSessionDate)'의 값은 무엇입니까? 분명히, 그들 중 하나가 정확히 당신이 생각하는 것이 아닙니다. – Aziz