использовать строку даты php в javascript - PullRequest
0 голосов
/ 03 августа 2009

У меня есть запись даты в формате гггг-мм-дд в базе данных mysql. Используя php я могу получить значение даты

$row = $myresult['date'];

Теперь я хочу предупредить об этом значении в JavaScript

так что я попробовал

var temp_date = <?php echo($row)?>;
alert (temp_date);

но это не сработало для меня. Проблема, с которой я столкнулся, заключается в том, чтобы поддерживать формат строки даты, которая, кажется, теряется при использовании в javascript. Любая помощь?

Ответы [ 6 ]

4 голосов
/ 03 августа 2009

Строковые литералы в JavaScript заключаются в двойные или одинарные кавычки:

var temp_date = "<?php echo($row)?>";
alert (temp_date);
1 голос
/ 03 августа 2009

Этот ответ первоначально был квази точной копией первых четырех.

Если вам нужна информация о дате как таковая, вы можете использовать метки времени Unix:

SELECT UNIX_TIMESTAMP(timefield) AS timestamp WHERE id = 1;

, затем просто вставьте его в PHP в этот фрагмент JS:

var mydate = new Date(<?php echo $row['timestamp']*1000; ?>);

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

alert (mydate.getDate());

и тому подобное.

Приветствия

1 голос
/ 03 августа 2009

Использовать json_encode () . Это превратит переменные PHP в действительный javascript, поэтому вам не нужно беспокоиться о цитировании / экранировании и т. Д.

var temp_date = <?php echo json_encode($row); ?>;
alert (temp_date);
0 голосов
/ 06 мая 2012

.php

$smarty->assign("profile_date",date("Y/m/d"));

.tpl

var NowDate=new Date("{/literal}{$profile_date}{literal}");
0 голосов
/ 03 августа 2009
var temp_date = '<?php echo($row)?>';
alert (temp_date);

Добавить цитаты. В противном случае это приведет к ошибке, потому что строки без кавычек являются проблематичными.

0 голосов
/ 03 августа 2009

Вы должны добавить кавычки к вашему назначению переменной JavaScript:

var temp_date = '<?php echo($row)?>';
alert (temp_date);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...