Есть файл с базой, в ней поле дата.
Есть файл с формой, для записи в базу даты(если отправляю дату не верно, подскажите как нужно).
Нужно достать из базы все даты зимнего периода(год и день не важны), и вывести их.
Не знаю как, так как в базу уходит строка. Прошу помощи.
<?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 написал(а):
ну тогда почему !?
Может топикстартеру тоже будет полезно знать.
http://ua2.php.net/manual/ru/ini.core.php#ini.short-open-tag
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 написал(а):
Благодарю парни, все работает.