Дата добавления php mysql

Как вставить текущую дату в базу данных MySQL

Вы не должны передавать date или datetime из PHP, если вы хотите использовать date / datetime во время выполнения вашего запроса, вместо этого вы можете использовать встроенные функции MySQL для этого

Вставить текущую дату & использование времени NOW()

$sql="INSERT INTO `delivery`(product_id,pr_name,pr_price,pr_size,user_id, dt) SELECT `product_id`,`pr_name`,`pr_price`,`pr_size`, `userid`, NOW() FROM `shopping_cart` WHERE `userid` = $uid"; 

Для вставки только текущей даты используйте CURRENT_DATE()

$sql="INSERT INTO `delivery`(product_id,pr_name,pr_price,pr_size,user_id, dt) SELECT `product_id`,`pr_name`,`pr_price`,`pr_size`, `userid`, CURRENT_DATE() FROM `shopping_cart` WHERE `userid` = $uid"; 

Эти запросы предполагают, что у вас есть столбец с именем dt в вашем delivery Таблица. Пожалуйста, измените имя столбца, если отличается в вашей схеме, или добавьте date или же datetime столбец в вашей таблице, если у вас еще нет

Другие решения

Вам не нужно делать захват даты в PHP, если вы хотите, чтобы дата была датой на момент выполнения запроса. Вы можете использовать MySQL NOW() функция, просто добавьте его во внутренний запрос в правильном столбце, чтобы соответствовать столбцам внешних запросов.

$sql="INSERT INTO `delivery` (product_id,pr_name,pr_price,pr_size,user_id, PR_DATE) SELECT `product_id`,`pr_name`,`pr_price`,`pr_size`, `userid`, NOW() FROM `shopping_cart` WHERE `userid` = $uid"; 

Если вы хотите вставить свою собственную дату, используйте в соответствии с ниже-

$date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date))); $sql="INSERT INTO `delivery`(product_id,pr_name,pr_price,pr_size,user_id, your_date_column) SELECT `product_id`,`pr_name`,`pr_price`,`pr_size`, `userid`, '$date' FROM `shopping_cart` WHERE `userid` = $uid"; 

Если вы хотите указать текущую дату, используйте

$sql="INSERT INTO `delivery`(product_id,pr_name,pr_price,pr_size,user_id, your_date_column) SELECT `product_id`,`pr_name`,`pr_price`,`pr_size`, `userid`, CURDATE() FROM `shopping_cart` WHERE `userid` = $uid"; 

Примечание: если вы хотите вставить со временем, используйте now ().

Я не могу понять тебя ясно. Обычно мы вставляем текущую дату как

Используйте now () в своем запросе, чтобы получить текущую дату.

Прежде всего вы должны проверить, есть ли у вас столбец для текущей даты или нет в таблице базы данных. Если нет, то вам нужно добавить столбец для хранения текущей даты и использовать этот столбец в запросе.

Вы можете использовать функцию timestamp / datetime / now () для сохранения текущей даты (выберите ее в соответствии с вашими требованиями)

$sql="INSERT INTO `delivery` (product_id,pr_name,pr_price,pr_size,user_id, curr_date) SELECT `product_id`,`pr_name`,`pr_price`,`pr_size`, `userid`, timestamp FROM `shopping_cart` WHERE `userid` = $uid"; 

Источник

Date Format in PHP for Insertion in MySQL

Date Format in PHP for Insertion in MySQL

  1. date() in PHP
  2. date_format() in PHP

MySQL is an RDBMS database intended to store relational data. It supports various data types, Date being one of them. As MySQL supports only particular date formats, you need to format the dates before inserting dates into the DB; otherwise, the DB will throw an error.

Читайте также:  Python install lib windows

This article will introduce how to format dates in PHP before inserting them into a MySQL DB.

  1. DATE : YYYY-MM-DD It only stores the date without time in the range of 1000-01-01 to 9999-12-31 . For example, 2021-10-28 .
  2. DATETIME : YYYY-MM-DD HH:MI:SS . It stores the date with time in the range of 1000-01-01 00:00:00 to 9999-12-31 23:59:59 . For example, 2021-10-28 10:30:24
  3. TIMESTAMP : YYYY-MM-DD HH:MI:SS . It stores the date with time in the range of 1970-01-01 00:00:01 to 2038-01-09 03:14:17 . For example, 2021-10-28 10:30:24
  4. TIME : HH:MI:SS . It stores the time without date in the range of -838:59:59 to 838:59:59 . For example, 10:30:24
  5. YEAR : YYYY or YY . It stores the year either 4 digits or 2 digits in the range of 70(1970)-69(2069) for 2 digits and 1901-2155 | 0000 for 4 digits. For example, 2021 .

Before learning the solution, let’s understand the concept of date() .

date() in PHP

It is a built-in PHP function that returns the formatted date string.

Syntax of date()

Parameters

  1. d — The day of the month in the range of 01 to 31
  2. m — A numeric representation of a month in the range of 01 to 12
  3. Y — A four-digit representation of a year
  4. y — A two-digit representation of a year
  5. H — A two-digit representation of an hour in the range of 00 to 23
  6. i — A two-digit representation of a minute in the range of 00 to 59
  7. s — A two-digit representation of a second in the range of 00 to 59

$timestamp : It is an optional parameter that specifies a Unix timestamp in integer format. If not provided, a default value will be taken as the current local time.

php  $formated_DATETIME = date('Y-m-d H:i:s');  echo $formated_DATETIME. "
"
;
// 2021-10-27 14:02:16 $formated_DATE = date('Y-m-d'); echo $formated_DATE. "
"
;
// 2021-10-27 $formated_TIME = date('H:i:s'); echo $formated_TIME. "
"
;
//14:03:57 $formated_YEAR = date('Y'); echo $formated_YEAR. "
"
;
// 2021 ?>
2021-10-27 14:02:16 2021-10-27 14:03:57 2021 

date_format() in PHP

It is a built-in PHP function that takes the DateTime object as input and returns the formatted date string.

Syntax of date_format()

date_format($dateObject, $format); 

Parameters

$dateObject : It is a mandatory parameter that specifies a DateTime object.

  1. d — The day of the month in the range of 01 to 31
  2. m — A numeric representation of a month in the range of 01 to 12
  3. Y — A four-digit representation of a year
  4. y — A two-digit representation of a year
  5. H — A two-digit representation of an hour in the range of 00 to 23
  6. i — A two-digit representation of a minute in the range of 00 to 59
  7. s — A two-digit representation of a second in the range of 00 to 59
php  $date = date_create("2021/10/27");   $formated_DATETIME = date_format($date, 'Y-m-d H:i:s');  echo $formated_DATETIME. "
"
;
$formated_DATE = date_format($date, 'Y-m-d'); echo $formated_DATE. "
"
;
$formated_TIME = date_format($date, 'H:i:s'); echo $formated_TIME. "
"
;
$formated_YEAR = date_format($date, 'Y'); echo $formated_YEAR. "
"
;
?>
2021-10-27 00:00:00 2021-10-27 00:00:00 2021 

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

Related Article — PHP MySQL

Источник

Как занести дату в MySQL

Приветствую, комрады!
1. Подскажите, пожалуйста, как занести дату в мускул в формате dd.mm.yyyy?
2. Подскажите, пожалуйста, как занести дату в мускул задним числом в формате dd.mm.yyyy?
3. Какой тип поля надо выставить?

Перепробовал много вариантов. И timestamp, и datetime. Что-то никак не получается.
Очевидно, что делаю не верно.
Заранее благодарен.

ЗЫ
Дата передается через input:

 $date = date("d.m.Y"); echo''; echo 'Дата:
'
; echo '.$date.'" maxlength="10" readonly>'; ?> input type="button" style="background: url('img/datepicker.jpg') no-repeat; width: 30px; border: 0px;" onclick="displayDatePicker('sD', false, 'dmy', '.');">br>br>
$select1 = mysql_query("SELECT *, DATE_FORMAT(sD,'%d.%m.%Y') FROM shopping ORDER BY sD"); echo'';while($result1=mysql_fetch_array($select1)){$sD=$result1['sD'];echo'';echo'';echo'';}echo'
'.$sD.'
'
;

Тип поля: timestamp
По умолчанию: CURRENT_TIMESTAMP
Формат времени прежний: 2015-02-09 02:34:27

Занести текущую дату в БД
как вообще поменять существующую дату на текущую

Заносит некорректные данные (дату) в mysql
В существующую форму регистрации добавил пункт даты рождения. В базе данных этот пункт тоже.

Проблема с mysql, в дату не вводится вся информация.
есть таблица в mysql в етой таблице поле date_time имеет тип datetime в етом поле есть запись.

Как занести дату и время??
Делаю так нечё не заносится $data = date("d.m.Y — H:i"); INSERT INTO teh (data, imia, famil.

Формат времени прежний: 2015-02-09 02:34:27

Ну так ты из этого формата потом можешь какой тебе угодно сделать

$select1 = mysql_query("SELECT *, DATE_FORMAT(sD, '%d.%m.%Y') as sD FROM shopping ORDER BY sD");

Остался второй вопрос:
2. Подскажите, пожалуйста, как занести дату в мускул задним числом в формате dd.mm.yyyy?

Может я не правильно читаю, но мне нужна не относительная (+- неделя или день), а абсолютная дата в формате dd.mm.yyyy, например 05.02.2015.
Дата передается через input:

 $date = date("d.m.Y"); echo''; echo 'Дата:
'
; echo '.$date.'" maxlength="10" readonly>'; ?> input type="button" style="background: url('img/datepicker.jpg') no-repeat; width: 30px; border: 0px;" onclick="displayDatePicker('sD', false, 'dmy', '.');">br>br>

Мускул:
Тип поля: timestamp
По умолчанию: CURRENT_TIMESTAMP

Когда я пытаюсь передать любое значение даты, то дата всегда принимает значение CURRENT_TIMESTAMP.

ЦитатаСообщение от Пифагор Посмотреть сообщение

база сама формирует это значение и поэтому вы не можете туда ничего занести, если хотите заносить туда данные — это нужно убрать

Насколько я помню, когда я убирал значение по дефолту, в базу заносились нули, но в формате dd.mm.yyyy)))
Сейчас проверить не могу, но вечером гляну. Отпишу.
Тем не менее, благодарен.

Добавлено через 7 минут
Еще вопрос:
Что за значение поля «По умолчанию: Как установлено»? Что там устанавливать можно? Довольно долго искал, но толкового объяснения не нашел.

Добавлено через 21 минуту
Еще вопрос))
Если По умолчанию: CURRENT_TIMESTAMP (штамп текущего времени), то, как я понимаю, его можно намеренно изменить, выбрав при занесении в базу иное значение. Но на практике это не так. То есть, здесь По умолчанию: CURRENT_TIMESTAMP есть неизменное фиксированное значение?

ЦитатаСообщение от Пифагор Посмотреть сообщение

Что за значение поля «По умолчанию: Как установлено»? Что там устанавливать можно? Довольно долго искал, но толкового объяснения не нашел.

вы можете в конце написать такое DEFAULT ‘0’, и если при insert вы не укажете значение, то но будет установлено в 0.

ЦитатаСообщение от Пифагор Посмотреть сообщение

Если По умолчанию: CURRENT_TIMESTAMP (штамп текущего времени), то, как я понимаю, его можно намеренно изменить, выбрав при занесении в базу иное значение. Но на практике это не так. То есть, здесь По умолчанию: CURRENT_TIMESTAMP есть неизменное фиксированное значение?

То есть, я добавляю «Как установлено: DEFAULT ‘0’» и поле будет принимать то значение, которое я передам через input. Верно?
А, случайно, это не то же самое, что «По умолчанию: NULL».

ЦитатаСообщение от Пифагор Посмотреть сообщение

здесь можно указать любое значение, которое будет заноситься, если не будет передано значение в insert. а если не будет default, то оно просто будет null, в любом случае ваши данные должны заноситься

ЦитатаСообщение от V@D!k Посмотреть сообщение

Похоже, вот почему в базу нули заносились.
Спасибо. Теория проста и понятна)) Дело за малым.

Добавлено через 7 часов 48 минут
Относительно следующего:
Подскажите, пожалуйста, как занести дату в мускул задним числом в формате dd.mm.yyyy?
Собственно, V@D!k:
Пробую по разному.
Вот что получается:
1. По умолчанию: DEFAULT ‘0’ — Ошибка запроса:#1067 — Invalid default value for ‘sD’
2. По умолчанию: NULL — записывает в базу NULL и выводит пустое значение
3. По умолчанию: нет. Атрибут: unsigned (как советовали) — Ошибка запроса:#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘UNSIGNED NOT NULL’ at line 1

Вот такая херомантия.
Комрады! Есть у кого-нить решение, как занести дату в мускул задним числом и передним цислом?

Источник

Оцените статью