jaquelyn Posted January 29, 2009 Share Posted January 29, 2009 Hi! I'm trying to process a date field on a form where the input is m/d/Y and I can't figure out how to have that entered as the appropriate Y-m-d mysql format. I've tried a thousand things, but I'm doing something wrong. And I can't use a dropdown. Users must be able to enter the date in m/d/Y format. Thank you for any help you can offer! Here is the code: $currentPage = $_SERVER["PHP_SELF"]; $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) { $insertSQL = sprintf("INSERT INTO tbl_timerecords (fd_date, fd_client, fd_task, fd_hours, fd_description, fd_status, fd_notes, fd_user) VALUES (%s, %s, %s, %s, %s, %s, %s, %s)", GetSQLValueString($_POST['fd_date'],"date"), GetSQLValueString($_POST['fd_client'], "text"), GetSQLValueString($_POST['fd_task'], "text"), GetSQLValueString($_POST['fd_hours'], "double"), GetSQLValueString($_POST['fd_description'], "text"), GetSQLValueString($_POST['fd_status'], "text"), GetSQLValueString($_POST['fd_notes'], "text"), GetSQLValueString($_POST['fd_user'], "text")); Link to comment https://forums.phpfreaks.com/topic/142974-help-mysql-date-format-from-form/ Share on other sites More sharing options...
rhodesa Posted January 29, 2009 Share Posted January 29, 2009 try changing this: GetSQLValueString($_POST['fd_date'],"date"), to GetSQLValueString(date('Y-m-d',strtotime($_POST['fd_date'])),"date"), Link to comment https://forums.phpfreaks.com/topic/142974-help-mysql-date-format-from-form/#findComment-749698 Share on other sites More sharing options...
jaquelyn Posted January 29, 2009 Author Share Posted January 29, 2009 I actually tried that - Doesn't work at all, BUT just found the solution to my problem here: http://dreamweaverforum.info/dreamweaver-general/126952-send-text-entered-mm-dd-yyyy-mysql.html The code snippet to be added is: function UStoMySQL($date) { // split the date on forward slashes $parts = explode('/', $date); // if split successfully, rearrange in the MySQL order if (is_array($parts) && count($parts) == 3) { return "$parts[2]-$parts[0]-$parts[1]"; } else { return false; } } $_POST['fd_date'] = UStoMySQL($_POST['fd_date']); This should be added just above the "if ((isset($_POST..." line. Thanks! Link to comment https://forums.phpfreaks.com/topic/142974-help-mysql-date-format-from-form/#findComment-749717 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.