quindi mktime funziona.. ma non trovi il dato sul Db?

allora il problema è solo come te hai configurato la colonna che deve ospitare il dato.

mktime restituisce un intero che corrisponde alla differenza in secondi dal 01/01/1970 alla data che te imposti.

se in db hai una colonna ti tipo date 00-00-0000
sicuramente andranno a cozzare.

prima di passare mktime nel db converti con date() il valore in modo che sia adatto a come è stato impostato sulla colonna del db.

http://www.php.net/manual/en/function.mktime.php