如何从数据库mysql比较PHP和日期的日期?

时间:2015-08-02 07:58:46

标签: php html mysql

我有像这样的mysql表

enter image description here

我的awal_pendaftaran列和akhir_pendaftaran_column都有日期类型。

我想将我选择的HTML字段设置为默认选择nama_periode current date (ex:2015-08-2)位于awal_pendaftaranakhir_pendaftaran之间的$date_now = date("Y-m-d"); $perQ="SELECT * FROM periode where awal_pendaftaran >= CURRENT_DATE ORDER BY awal_pendaftaran"; $perQ2 = mysql_query($perQ) or die(mysql_error());; $selected=""; while($perF=mysql_fetch_array($perQ2)) { $awal_mendaftar=$perF['awal_pendaftaran']; $akhir_mendaftar= $perF['akhir_pendaftaran']; if ((strtotime($awal_mendaftar)<= strtotime($date_now)) && (strtotime($akhir_mendaftar)>= strtotime($date_now)) ){ $selected="selected"; } else { $selected="";} echo "<option value=\"$perF[id_periode]\" selected=\"$selected\" >$perF[nama_periode]</option>\n"; }

我尝试过这样的代码

background worker

但是我的HTML选择字段总是显示“PERIODE 4”作为选定数据(我想要PERIODE 2),有什么帮助吗?

1 个答案:

答案 0 :(得分:2)

在html中,所选属性的值是可选的。只要该选项具有选定属性,html解释器就会将此选项指定为选中状态。因此,您必须稍微更改一下代码:

if(
    (strtotime($awal_mendaftar)<= strtotime($date_now)) 
    && (strtotime($akhir_mendaftar)>= strtotime($date_now)) 
){
    $selected = '';
} 
else { 
    $selected = 'selected="selected"';
}

echo '<option value="'.$perF['id_periode'].'" '.$selected.'>'.$perF['nama_periode']."</option>\n";