|
|
|
|
|
|
для: st.Ass
(13.11.2006 в 21:01)
| | Решил проблему
<?
$time = "17-10-2004";
$day = substr($time,0,2);
$month= substr($time,3,2);
$year = substr($time,6,4);
$time= $year.'-'.$month.'-'.$day;
echo $time; // 2004-10-17
?>
|
| |
|
|
|
|
|
|
|
для: kasmanaft
(12.11.2006 в 13:37)
| | Хех:) А вот и нет!!! Проблема в strtotime()
Такой код работает правильно
<?
$time="2004-07-11 11:16:34";
$time=strtotime($time);
echo strftime("%d.%m.%Y %H:%M",$time);
?>
|
А такой нет
<?
$time="11-07-2004 11:16:34";
$time=strtotime($time);
echo strftime("%Y.%m.%d %H:%M",$time);
?>
|
А у меня данные из формы передаются как раз как во втором примере...
Т.о. необходимо $time="11-07-2004 11:16:34" представить как $time="2004-07-11 11:16:34" .
Как это можно сделать? | |
|
|
|
|
|
|
|
для: st.Ass
(12.11.2006 в 10:47)
| | Это у тебя php какой-то странный ... все работает как надо | |
|
|
|
|
|
|
|
для: Trianon
(12.11.2006 в 00:43)
| | Вот, что странно:
<?
$date_1="01-11-2006";
$date_1=strtotime($date_1); // 1177790400
echo $date_1;
$date_2=date("Y-m-d H:i:s",$date_1); // 2007-04-29 00:00:00
echo $date_2;
?>
|
Как получается 2007-04-29? | |
|
|
|
|
|
|
|
для: st.Ass
(12.11.2006 в 00:03)
| |
<?
$date_1 = $HTTP_POST_VARS['date_1']; // получаем данные из формы
echo $date_1; // Здесь верная дата - 10-10-2006
$date_1 = strtotime($date_1);
echo $date_1; // Здесь $date_1 в unixstamp - 1459108800
$query="SELECT * FROM main WHERE UNIX_TIMESTAMP(time_create) > $date_1";
// здесь сравниваем в unixstamp time_create и $date_1 также в unixstamp
$result= mysql_query($query)
$a=mysql_num_rows($result);
echo $a; // а здесь все равно получаем неправильное значение, причем всегда равному одному и тому же числу...
?>
|
| |
|
|
|
|
|
|
|
для: st.Ass
(05.11.2006 в 15:59)
| |
<?
$date_1 = $HTTP_POST_VARS['date_1']; // получаем данные из формы
echo $date_1; // Здесь верная дата - 10-10-2006
$date_1 = strtotime($date_1);
echo $date_1; // Здесь $date_1 в unixstamp - 1459108800
$query="SELECT * FROM main WHERE UNIX_TIMESTAMP(time_create) > FROM_UNIXTIME($date_1,'%Y-%m-%d %H:%i:%s')"; // здесь сравниваем в unixstamp time_create и $date_1 также в unixstamp
$result= mysql_query($query)
$a=mysql_num_rows($result);
echo $a; // а здесь все равно получаем неправильное значение, причем всегда равному одному и тому же числу...
?>
|
Помогите разобраться - очень надо... Что я неправильно делаю?:( | |
|
|
|
|
|
|
|
для: st.Ass
(05.11.2006 в 12:48)
| |
<?
$date_1 = $HTTP_POST_VARS['date_1'];
echo $date_1; // Здесь верная дата - 10-10-2006
$date_1 = strtotime($date_1);
echo $date_1; // Здесь 1459108800
$date_1 = date("'Y-m-d H:i:s'", strtotime($date_1));
echo $date_1; // здесь получаем '2016-03-28 00:00:00'
$query="SELECT * FROM main ";
if(isset($date_1)) $query.=" WHERE time_create >".$date_1; // а здесь соответственно получаем неправильное сравнение
$result = mysql_query($query);
if (!$result) echo die(mysql_error());
$a=mysql_num_rows($result);
?>
|
1459108800 :(
Объясните, пожалуйста, почему не работает данный код. | |
|
|
|
|
|
|
|
для: kasmanaft
(05.11.2006 в 12:28)
| | Теперь год 2016...
<?
$date_1 = $HTTP_POST_VARS['date_1'];
echo $date_1; // Здесь верная дата - 10-10-2006
$date_1 = date("'Y-m-d H:i:s'", strtotime($date_1));
echo $date_1; // здесь получаем '2016-03-28 00:00:00'
$query="SELECT * FROM main ";
if(isset($date_1)) $query.=" WHERE time_create >".$date_1; // а здесь соответственно получаем неправильное сравнение
$result = mysql_query($query);
if (!$result) echo die(mysql_error());
$a=mysql_num_rows($result);
?>
|
| |
|
|
|
|
|
|
|
для: st.Ass
(05.11.2006 в 11:54)
| |
int strtotime ( string time [, int now] )
Первым параметром функции должна быть строка с датой на английском языке, которая будет
преобразована в метку времени относительно метки времени, переданной в now, или
текущего времени, если аргумент now опущен. В случае ошибки возвращается -1.
|
не $date_1 = strtotime("'Y-m-d H:i:s'", $date_1);
а $date_1 = date("'Y-m-d H:i:s'", strtotime($date_1)); | |
|
|
|
|