Попытка использовать jquery datetimepicker, и я могу заставить аддон работать, однако, когда я публикую данные, они не обновляются в базе данных. Все остальное обновляется, кроме даты / времени.
Примечание: я понимаю, что это все еще mysql, я работаю над обновлением всего сайта.
edit_release_form.php, у меня есть
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
<script type="text/javascript" src="http://vmcnucmed.cvm.umn.edu/includes/js/jquery-ui-timepicker-addon.js"></script>
<link rel="stylesheet" href="http://vmcnucmed.cvm.umn.edu/includes/jquery-ui-timepicker-addon.css">
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.0/themes/base/jquery-ui.css">
<script>
$( function() {
$('#datetime_released').datetimepicker({
controlType: 'select',
oneLine: true,
timeFormat: 'hh:mm:ss tt'
});
} );
</script>
Мой вклад:
<input tabindex="1" id="datetime_released" type="text" name="datetime_released" >
post.php
<?php
// Database Conection Parameters
define('DB_SERVER', "hostname");
define('DB_USER', "username");
define('DB_PASSWORD', "password");
define('DB_TABLE', "database");
// Connection to the Database
$mysqli = mysqli_connect(DB_SERVER, DB_USER, DB_PASSWORD, DB_TABLE);
$mysqli->set_charset("utf8");
$mysqli->query("SET NAMES 'utf8'");
if (mysqli_connect_errno($mysqli)) {
trigger_error('Database connection failed: ' . mysqli_connect_error(), E_USER_ERROR);
}
$datetime_released = $_POST['datetime_released'];
$release_probeSN = $_POST['release_probeSN'];
$release_reading = $_POST['release_reading'];
$release_reading_loc = $_POST['release_reading_loc'];
$releasedby = $_POST['releasedby'];
$id = $_POST['id'];// Query
$sql = "UPDATE xxx
SET datetime_released=?,
release_probeSN=?,
release_reading=?,
release_reading_loc=?,
releasedby=?
WHERE patientdoseID=?";
if(!($stmt = $mysqli->prepare($sql)))
{
die("Unable to prepare statement");
}
else
{
$stmt->bind_param("sissii", $datetime_released, $release_probeSN, $release_reading, $release_reading_loc, $releasedby, $id);
if($stmt->execute())
{
echo 'Patient Updated Successfully. <br /><br />Database ID: <br>';
header('Location: http://vmcnucmed.cvm.umn.edu',
TRUE, // rewrite existing Location header
302 // set status code
);
}
else
{
die("Update failed");
}
}
mysqli_close($mysqli);
?>
Это — то, как Вы можете преобразовать опубликованную дату js в формат mysql.
Объект PHP DateTime может принимать различные форматы и обычно правильно их конвертирует.
Вы можете легко упаковать это в функцию — для удобства чтения.
<?php
// set your timezone somewhere prior to creating a DateTime object
// to prevent local vs UTC issues
date_default_timezone_set('America/Chicago');
// mysql date format
$format = "Y-m-d H:i:s";
// an example input
$input = '08/25/2016 05:19:20 am';
// convert input date into a PHP DateTime object
$my_date = new DateTime($input);
// create a string in the desired mysql format
$output = $my_date->format($format);
echo $output;
// outputs 2016-08-25 05:19:20 - just the way mysql likes it
Других решений пока нет …