Nabierz nawyku unikania wszystkich danych wejściowych bazy danych za pomocą mysql_real_escape_string - naprawdę powinieneś użyć jakiegoś wrappera, takiego jak PDO lub ADODb aby Ci w tym pomóc, ale oto jak możesz to zrobić bez:
$query = sprintf("INSERT INTO users ".
"(id, first_name, second_name, register_date, lastlogin_date)".
"VALUES('%s','%s','%s','%s','%s')",
mysql_real_escape_string($user_id),
mysql_real_escape_string($first_name),
mysql_real_escape_string($second_name),
mysql_real_escape_string($date),
mysql_real_escape_string($date));
$result = mysql_query($query);
a także sprawdź błędy za pomocą mysql_error
if (!$result)
{
echo "Error in $query: ".mysql_error();
}