Unusual Time Behavior in 2.1

I’m running into an odd situation where datetime_select is making the
hours into minutes and putting nothing in for hours. It sounds really
odd, but it is whats happening. I generated a simple scaffold with the
results below.

My database table is mysql which looks like:

create_table :my_sessions do |t|
  t.integer :user_id
  t.string :ssession_id
  t.date :start_date
  t.time :start_time
  t.time :end_time
  t.string :location
  t.string :title
  t.string :source
  t.boolean :msg_sent

  t.timestamps
end

The View is standard scaffold:

Editing my_session

<% form_for (@my_session) do |f| %>

<%= f.label :ssession_id %>
<%= f.text_field :ssession_id %>

<%= f.label :start_date %>
<%= f.date_select :start_date %>

<%= f.label :start_time %>
<%= f.datetime_select :start_time %>

<%= f.label :end_time %>
<%= f.datetime_select :end_time %>

<%= f.label :location %>
<%= f.text_field :location %>

<%= f.label :title %>
<%= f.text_field :title %>

<%= f.submit "Update" %>

<% end %> <%= link_to 'Show', @my_session %> | <%= link_to 'Back', my_sessions_path %>

My controller is:
def update
user = User.find(session[:user_id])
@my_session = MySession.find(params[:id], :conditions =>
[“my_sessions.user_id = ?”, user.id])

respond_to do |format|
  if @my_session.update_attributes(params[:my_session])
    flash[:notice] = 'MySession was successfully updated.'
    format.html { redirect_to(@my_session) }
    format.xml  { head :ok }
  else
    format.html { render :action => "edit" }
    format.xml  { render :xml => @my_session.errors, :status =>

:unprocessable_entity }
end
end
end

The model is empty.

Again, if I view my edit page and the time that is returned from the
database is:
January 1, 2007, 13:45
I change it on the form to be:
January 1, 2007, 12:45
What gets stored is:
January 1, 2007, 1:12

When creating a new record the day gets set as the hour, the hour the
minute and the minute the seconds. Its really odd. Any help would be
great.

Thanks Matt