How to make one field automatically have the date-time of the last change of another field
You may use hook_node_presave to save time in the field

/**
 * Implements hook_node_presave().
 */
 function jysk_reviews_node_presave($node) {
  if ($node-&gt;type == 'my_type') {
    if ($node-&gt;my_changed_field[LANGUAGE_NONE][0]['value'] != $node-&gt;original-&gt;my_changed_field[LANGUAGE_NONE][0]['value']) {
      $node-&gt;my_time_field[LANGUAGE_NONE][0]['value'] = time();
    }
  }
}