[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Дата, date, datetime
Dark_Strannik
Я новичок в php, так что сильно не бранитесь.
Есть файл с базой, в ней поле дата.
Есть файл с формой, для записи в базу даты(если отправляю дату не верно, подскажите как нужно).
Нужно достать из базы все даты зимнего периода(год и день не важны), и вывести их.
Не знаю как, так как в базу уходит строка. Прошу помощи.

<?php
//отдельный файл
$sql = "CREATE TABLE `car`(//Создаю таблицу
`date` datetime NOT NULL default '0000-00-00 00:00:00'//Поле дата
)"
;
mysql_query($sql) or die(mysql_error());
mysql_close();
//кончился файл с базой
?>



<?php
//начался файл с формой
//соединение с базой и выбор таблицы опустил

if(!empty($_POST['date'])){
$d = $_POST['date'];
$sql="INSERT INTO `car` (`date`) VALUE('$d')";//записал значение даты в поле date
mysql_query($sql) or die(mysql_error());
header("Location: file.php");
exit;
}
?>

<!--Форма-->
<
form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<?$t=time()?>
Дата выпуска<br/>
<
input type="text" name="date" value="<?=date('Y-M-d H:i:s', $t)?>">
<
input type="submit" value="Добавить">
</
form>
<?php
$sql="SELECT `date` FROM `car`";
$usqrs = mysql_query($sql) or die(mysql_error());
mysql_close();

while($user = mysql_fetch_assoc($users)){//вывожу дату
echo $user['date']."<br>";
}
?>




Спустя 1 час, 53 минуты, 5 секунд (18.08.2012 - 10:43) OleKh написал(а):
Точно не уверен, но зачем тут знак равенства?

<?=date('Y-M-d H:i:s', $t)?>

Спустя 36 минут, 41 секунда (18.08.2012 - 11:20) T1grOK написал(а):
Цитата (OleKh @ 18.08.2012 - 08:43)
Точно не уверен, но зачем тут знак равенства?

<?=date('Y-M-d H:i:s', $t)?>

С этим все норм. Это сокращение echo.

В базу должна приходить дата в формате: Y-m-d H:i:s.
Вот это лишнее. $t - здесь "пустая"(лишняя) переменная, т-к функция date без наличия второго параметра сама определяет текущий timestamp и преобразует к "удобочитаемому" формату.


<?$t=time()?>
<?=
date('Y-M-d H:i:s', $t)?>

Спустя 4 минуты, 2 секунды (18.08.2012 - 11:24) killer8080 написал(а):
Цитата (OleKh @ 18.08.2012 - 11:43)
Точно не уверен, но зачем тут знак равенства?

Это сокращенная запись от
<?php echo date('Y-M-d H:i:s', $t); ?>

Цитата (Dark_Strannik @ 18.08.2012 - 09:50)
Нужно достать из базы все даты зимнего периода(год и день не важны), и вывести их.

SELECT * FROM `car` WHERE MONTH (`date`) IN (1,2,12)

Спустя 56 минут, 37 секунд (18.08.2012 - 12:21) OleKh написал(а):
ну тогда почему !?
action="<?php echo $_SERVER['PHP_SELF']; ?>" 
тоже надо сократить, а то не порядок получается :)

Может топикстартеру тоже будет полезно знать.
http://ua2.php.net/manual/ru/ini.core.php#ini.short-open-tag
Цитата
Для использования этого сокращения должна была быть включена директива short_open_tag. Начиная с версии PHP 5.4.0 запись <?= стала доступна всегда.

Спустя 18 часов, 18 минут, 49 секунд (19.08.2012 - 06:39) Dark_Strannik написал(а):
Благодарю парни, все работает.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.