Я сделал кучу исследований по этой теме, но по какой-то причине ничего не работает!
Я хочу использовать виджет datepicker для обновления строки в MySQL (у которой есть столбец даты). По какой-то причине, когда я пытаюсь обновить строку (которая работает для других входных вещей), она говорит в моей таблице MySQL 0000-00-00 ??
Это мой код jQuery:
<script> $( function() { $( "#datepicker" ).datepicker({ dateFormat:"yy-mm-dd", altField: "#alternate", altFormat: "DD, d MM, yy" }); $( "#selectable" ).selectable(); } ); </script>
И мой HTML:
<p> Date: <input name="slot_date" id="datepicker" > <input type="text" id="alternate" size="30"></p>
Мой PHP:
if( isset($_POST['btn-book']) ) { $slot_date = date('yy-mm-dd',strtotime($_POST['slot_date'])); $slot_line=$_POST['slot_line']; $reason=$_POST['reason']; $id=$_POST['id']; $sql="UPDATE appointments SET slot_date='$slot_date', slot_line='$slot_line', reason='$reason' WHERE id='$id'"; $result=mysql_query($sql); if($result){ header ("Location: homepage_loggedin_book_success.php"); }else { echo "ERROR"; } }
Во всяком случае, я пробовал целую вечность, но датапикер не входит в мою таблицу MySql?
Используйте strtotime () и date () для обеспечения требуемого формата.
$slot_date = date('Ym-d',strtotime($slot_date)); # will output 2016-08-16 $sql="UPDATE appointments SET slot_date='$slot_date', slot_line='$slot_line', reason='$reason' WHERE id='$id'";
В исходной форме, которая создала запись, все ли установлено правильно? slot_line
полей slot_line
и reason
правильно? Если это не проблема, может быть в вашем PHP. Не могли бы вы разместить больше PHP-кода для контекста?