Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как изменить формат даты у текста? (https://javascript.ru/forum/misc/66102-kak-izmenit-format-daty-u-teksta.html)

drkrol 25.11.2016 00:14

Как изменить формат даты у текста?
 
Здравствуйте. На сайте есть множество блоков с классом date. Формат даты в них указан, как "гггг-мм-дд". Как изменить у всех блоков с классом date вид на "дд.мм.гггг"? т.е. через точку и в обратном порядке. https://jsfiddle.net/bmsz7adL/

Rise 25.11.2016 00:21

drkrol, зачем это надо почему бы сразу не писать как надо?

drkrol 25.11.2016 02:44

)))) я из php получаю данные в виде yyyy-mm-dd. phpmyadmin никак мне не поддаётся и я не могу изменить формат даты. Ну я и подумал: если гора не идет к магомеду, магомед пойдет к горе

ksa 25.11.2016 09:01

drkrol, как вариант...

<div class="date">2016-11-25</div>
<div class="date">2016-11-26</div>
<div class="date">2016-11-27</div>
<input type="text" value="2016-11-29">
<div class="never">2016-12-01</div>
<script type='text/javascript'>
var obj=document.querySelectorAll('.date');
for (var i=0; i<obj.length; i++){
	obj[i].innerHTML=obj[i].innerHTML.replace(/(\d+)-(\d+)-(\d+)/,'$3.$2.$1');
};
</script>

Гробовщик 25.11.2016 09:42

Цитата:

Сообщение от drkrol (Сообщение 436139)
)))) я из php получаю данные в виде yyyy-mm-dd. phpmyadmin никак мне не поддаётся и я не могу изменить формат даты. Ну я и подумал: если гора не идет к магомеду, магомед пойдет к горе

Ну в MySQL есть функции
Код:

DATE_FORMAT( datecol , '%d.%m.%Y')  AS datecol
SELECT DATE_FORMAT(dateColumn,'%d.%m.%Y') AS dateColumn FROM table

И ссылочка на документацию ТЫК
Да и сам php неплохо справляется с данной задачей
$datetime=2016-11-25;
$today=date("D.m.Y",strtotime($datetime))

ksa предложил конечно хороший и рабочий вариант, но я бы всё равно советовал бы вам использовать для этих целей MySql или php
Я бы пользовался MySQL

ksa 25.11.2016 09:51

Цитата:

Сообщение от Гробовщик
всё равно советовал бы вам использовать для этих целей MySql или php

Праильное решееение! (с)

laimas 25.11.2016 13:54

Цитата:

Сообщение от Гробовщик
$today=date("D.m.Y",strtotime($datetime))

"d.m.Y"

drkrol 25.11.2016 14:06

ksa,
Гробовщик,
Да прикол в том, что у меня не получилось в mysql поменять формат даты.
Я написал "SELECT DATE_FORMAT(dateend,'%d.%m.%Y') AS dateend FROM main", а мне в ответ " Данное выделение не содержит уникального столбца. Изменение сетки, выставление галочки, редактирование, копирование и удаление невозможно".

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

laimas 25.11.2016 14:14

А причем тут РМА? Это нужно делать в запросе к базе, ибо в самой базе дата всегда будет в формате YYYY-mm-dd, а вот выборку можно делать в любом формате.

То что на картинке означает, что вы не сможете редактировать записи из в РМА пока не укажите уникальный индекс какому либо полю (правда любому, это к слову, а не к действию).

drkrol 25.11.2016 14:35

laimas,
так. подождите. Вы предлагаете решить эту проблему на уровне mysql. А потом выходит, что это решается далеко не в mysql, а в самом php файле.


Часовой пояс GMT +3, время: 03:12.