Вызов Ajax возвращает неверный формат даты в форме списка данных

У меня есть эта функция вызова Ajax:

$(document).ready(function(){
v
var TesterID = "<?php echo $_GET['TesterID']; ?>"; /* value der Tester erhalten */ 

        $.ajax({ /* AJAX aufrufen */
            url: 'ma_get-TesterID.php',
            type: 'get', /* Methode zum übertragen der Daten */
            data: {TesterID:TesterID}, /* Daten zu übermitteln */
            dataType: 'json',
            success:function(response){ /* Die zurückgegebenene Daten erhalten */

                var len = response.length;

                $("#Teststart").empty(); /* Die erhaltenden Daten werden bei der ID angezeigt */
                for( var i = 0; i<len; i++){
                    var CID = response[i]['CID'];
                    var Datum = response[i]['Datum'];

                    $("#Teststart").append("<option value='"+Datum+"'>"+Datum+"</option>");

                }
            }
        });
}); 

Ajax возвращает даты из базы данных с помощью этого кода:

$sqlreadZeit = "Select TOP 10 CID,Datum from DB.dbo.xxx where TesterID = '".$_GET['TesterID']."' order by Datum DESC";
                $result1 = sqlsrv_query($conn, $sqlreadZeit);
                $zeiten_arr = array();
                while ($row = sqlsrv_fetch_array($result1, SQLSRV_FETCH_ASSOC)) {
                $CID = $row['CID'];

                $Datum = $row['Datum']->format('d.m.Y H:m:s');

                $zeiten_arr[] = array("CID" => $CID, "Datum" => $Datum);

                }
    header('Content-type: application/json');
  echo json_encode($zeiten_arr); /* Ausgabe printen die Erhalten werden soll */

Вот результаты, когда я выполняю запрос в SQL:

Вызов Ajax возвращает неверный формат даты в форме списка данных

Но в даталисте дата показывается вот так, вроде округлена.

Вызов Ajax возвращает неверный формат даты в форме списка данных

В какой части может быть проблема? Я этого не вижу.

Я использую MS SQL Server и moment-with-locales.js в другой функции Javascript.

Пожалуйста, установите часовой пояс на свое местное время в php date_default_timezone_set('America/Los_Angeles');, также проверьте часовой пояс вашей базы данных, используя SELECT NOW(), если это ваш часовой пояс, то больше никаких проблем не запускается SET GLOBAL time_zone = timezone;

danish-khan-I 28.05.2019 21:50

у меня mssql а не mysql

Daniel 28.05.2019 22:00

может быть, что-то делать с моментом-с-locales.js? я использую его в другой функции JavaScript.

Daniel 28.05.2019 22:04

попробуйте выбрать свое местное время, используя каждый язык? и посмотреть, что вы получите.

danish-khan-I 28.05.2019 22:08
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
4
134
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Рассмотрим следующее:

  • Измените формат даты на 'd.m.Y H:i:s' и отформатируйте даты, используя следующую инструкцию: $Datum = $row['Datum']->format('d.m.Y H:i:s'); ('i' для минут с ведущими нулями).

  • Взгляните на ReturnDatesAsStringsвариант подключения, когда вы звоните sqlsrv_connect(). Если для этого параметра установлено значение true, значения даты/времени возвращаются в виде строк.

@ Даниэль Рад помочь.

Zhorov 28.05.2019 22:15

Другие вопросы по теме