How to change the author and date of a new comment before posting it?
Author
For changing the author (not the date), you might be able to use the Masquerade module for this. Some details from its project page:

The Masquerade module allows site administrators (or anyone with enough permissions) to switch users and surf the site as that user (no password required). That person can switch back to their own user account at any time.
This is helpful for site developers when trying to determine what a client, logged in as themselves, might see when logged into the site.
The masquerade module is designed as a tool for site designers and site administrators. While masquerading, a field is set on the $user object, and a menu item appears allowing the user to switch back. Database log (watchdog) entries are made any time a user masquerades or stops masquerading as another user.

So just switch to the appropriate user before filling in your forms, that should do what you're trying to achieve.
PS: works for any currently supported release of Drupal.
Date
Not sure (yet) about how to do this, but I'd try to use the Rules module for this. Here is a prototype of a rule that you may want to look at and experiment with:
{ &quot;rules_update_comment_post_date&quot; : {
    &quot;LABEL&quot; : &quot;Update comment post date&quot;,
    &quot;PLUGIN&quot; : &quot;reaction rule&quot;,
    &quot;ACTIVE&quot; : false,
    &quot;OWNER&quot; : &quot;rules&quot;,
    &quot;REQUIRES&quot; : [ &quot;rules&quot;, &quot;comment&quot; ],
    &quot;ON&quot; : { &quot;comment_presave&quot; : [] },
    &quot;DO&quot; : [
      { &quot;data_set&quot; : { &quot;data&quot; : [ &quot;comment:created&quot; ], &quot;value&quot; : &quot;-1 day&quot; } }
    ]
  }
}

This rule should set the actual comment date to &quot;current date - 1 day&quot;. Just as a sample. Adapt the value to fit your needs (before posting each comment, sorry ...), or try to think of an enhanced version of it to somehow retrieve the comment date as part of this rule.