2017-07-07 88 views
0

我想用我的代碼,以幫助如何編輯HTML輸入日期到MySQL TIMESTEMP格式引起我的SQL代碼無效,數據不會添加到我的數據庫,感謝您的幫助提交PHP - HTML日期到MySQL DATE

還問我要檢查1日SQL底部事業第二SQL deppends這段代碼,謝謝

if (isset($_POST['pridaj_anime_submit'])) { 
    $sql_vloz_anime = "INSERT INTO anime (a_name, a_year, a_translated_min, a_translated_max, a_rate_min, a_rate_max, a_edit, a_condition) 
           VALUES ('$_POST[nazov]', '$_POST[rok]', '0', '$_POST[pocet]', '8', '10', '$_POST[preklad]', '$_POST[stav]')"; 
    mysqli_query($connect_to_db , $sql_vloz_anime); 
    $sql_ziskaj_a_id_pridaneho_anime = "SELECT * FROM anime WHERE a_name = '$_POST[nazov]'"; 
    $run_sql_ziskaj_a_id_pridaneho_anime = mysqli_query($sql_ziskaj_a_id_pridaneho_anime); 
    $a_id_ziskane = ""; 
while ($db_data = mysqli_fetch_assoc($run_sql_ziskaj_a_id_pridaneho_anime)) { 
    $a_id_ziskane = $db_data['a_id']; 
} 

    $sql_vloz_anime_info = "INSERT INTO anime_info (a_id, a_img, a_start, a_stop, a_time_ep, a_akihabara) 
             VALUES ('$a_id_ziskane' , '$_POST[obrazok]', '$_POST[zaciatok]', '$_POST[koniec]', '$_POST[cas]', '$_POST[akihabara]')"; 
    mysqli_query($connect_to_db , $sql_vloz_anime_info); 
} 
+0

學會使用參數。保存你自己的語法問題並保護你的代碼免受SQL注入。 –

+1

請查看http://bobby-tables.com - 您的代碼運行時存在SQL注入風險。切勿將用戶輸入直接放入查詢中,而是使用預處理語句。有關更多信息,請參閱發佈的鏈接。 – Twinfriends

+0

@Twinfriends檢查它:) thx會去修復整個項目 –

回答

2
$input_date=$_POST['date']; 
$date=date("Y-m-d H:i:s",strtotime($input_date)); 

這將輸入日期轉換到MySQL時間戳兼容格式。 請勿將POST值直接放入您的查詢中。通過SQL注入,您的網站或Web應用程序將很快被黑客入侵。

1

MySql datetime認爲是yyyy-mm-dd h:i:s格式。

您的輸入日期如dd-mm-yyyy h:i:s等。

然後使用轉換日期到yyyy-mm-dd h:i:s。閱讀strtotime手冊。

例如,

$inputDate = '06-06-2017 05:21:34'; 
$mysqlDate = date("Y-m-d H:i:s",strtotime($inputDate)); 

// MySql Query. 
INSERT INTO table_name SET `your_field`='$mysqlDate'