У меня есть php, который запрашивает базу данных для получения некоторых дат:
<?php //connect to db etc $sql="SELECT date FROM entries ORDER BY date ASC"; $result = mysql_query($sql); if($result){ $entryDates = array(); while ($row=mysql_fetch_array($result)) { $entryDates[] = $row['date']; } $minDate = explode("-", $entryDates[0]); $minDate[1] -= 1; $maxDate = explode("-", end($entryDates)); $maxDate[1] -= 1; echo($maxDate[1]); } ?>
Затем я попытаюсь назначить даты min и max для uidatepicker, используя jquery.
Первоначально я сделал это, и это сработало:
var theDate = new Date(); $( "#datepicker" ).datepicker( { dateFormat: 'dd-mm-yy', maxDate: new Date(theDate.getFullYear(), theDate.getMonth(), theDate.getDate()) } )
Однако попытка реализовать то же самое с использованием php vars не работает:
$( "#datepicker" ).datepicker( { dateFormat: 'dd-mm-yy', maxDate: new Date(<?php echo($maxDate[2]);?>,<?php echo($maxDate[1]);?>,<?php echo($maxDate[0]); ?>) minDate: new Date(<?php echo($minDate[2]);?>,<?php echo($minDate[1]);?>,<?php echo($minDate[0]); ?>) } );
Я пытаюсь использовать следующий конструктор даты:
new Date(year, month, day, hours, minutes, seconds, milliseconds)
$ minDate и $ maxDate – это массивы, которые выглядят примерно так:
[yyyy|mm|dd]
Когда они повторяются, они содержат правильные значения. Так что проблема заключается в jQuery … возможно, как я пытаюсь создать Date … но что именно не так с моим синтаксисом? Я не вижу, что я делаю неправильно …