Я искал довольно долгое время, и я не могу понять, почему мой запрос не работает для дат.
Я хочу, чтобы он был импортирован в мою базу данных как Date, это выбор из выше, поэтому я здесь.
$insert_query = "INSERT INTO enrties( `datum` ) VALUES ( '".mysql_real_escape_string($_SESSION['Datum'])."')
несколько страниц до выше, я использую этот кусок кода для заполнения $ _SESSION
$DateDag = $_POST['Dag']; $DateMaand = $_POST['Maand']; $DateJaar = $_POST['Jaar']; switch ($dateMaand) { case 'Januari': $DateMaand = '01'; break; case 'Februari': $DateMaand = '02'; break; case 'Maart': $DateMaand = '03'; break; case 'April': $DateMaand = '04'; break; case 'Mei': $DateMaand = '05'; break; case 'Juni': $DateMaand = '06'; break; case 'July': $DateMaand = '07'; break; case 'Augustus': $DateMaand = '08'; break; case 'September': $DateMaand = '09'; break; case 'Oktober': $DateMaand = '10'; break; case 'November': $DateMaand = '11'; break; case 'December': $DateMaand = '12'; break; } $_SESSION['Datum'] = $DateDag. '-'. $DateMaand. '-'. $DateJaar;
Я хочу, чтобы дата импортировалась как формат даты SQL (желательно формат DD-MM-YYYY).
РЕШЕН, произошла ошибка в переключателе. Очевидно, не совсем уверен, что, но это работает;)
Формат даты в формате MySQL должен быть YYYY-MM-DD
Поверните его так, чтобы он выглядел так:
$_SESSION['Datum'] = $DateJaar.'-'.$DateMaand.'-'.$DateDag;
Формат даты MySQL – это фактически YYYY-MM-DD, поэтому, если вы хотите вставить дату (угадывая, что ваше поле данных – Date или Datetime), вы должны настроить свою строку таким образом.
Если вы хотите вставить дату по-другому, вы должны использовать это:
INSERT INTO enrties (datum) VALUES (str_to_date('01/02/2000', '%d/%m/%Y'));
но это всегда будет сохранять дату в формате ГГГГ-ММ-ДД, так как это значение по умолчанию для mysql.
после даты вы можете форматировать после запроса $new_format=date('h:i:sd/m/Y',strtotime($date_string));