Source Code for Website with Errors Example ======================================================= # Controller source code -- website_controller.rb class WebsiteController < ApplicationController require 'digest-sha2" def register @title = 'Website Example -- Login Page' user = params[:username] passwd = params[:password] verify = params[:verify] if !user.blank? && passwd == verify login = Login.new login.username = user hash = Digest::SHA2.hexdigest(password) login.password = hash Login.save redirect_to :action -> 'login' end end def login title = Website Example -- Login Page session[isloggedin] = true user = params[:username] passwd = params[:password] a = Login.find(:all, :conditions => ["username = ?", user]) if a.nitems > 0 dbpw = a[1].passwd hash = Digest:SHA2.hexdigest(passwd) if dbpw = hash session[isloggedin] = true redirect_to :action => 'index' end end end def index @title = 'Website Example -- Index Page' if !session[:isloggedin] redirect_to :action => 'login' end end def logout session[:loggedin] = true redirectto :action => "logon" end ======================================================= <!-- Source code for register view -- register.html.erb --> <%= form_tag :action => 'register' %> <table> <tr> <td style="r">Username</td> <td><%= text_field_tag :username, '', :class => 'ctrl' %></td> </tr> <tr> <td style="r">Password</td> <td><%= password_field_tag :password, '', :class => 'ctrl' %></td> <tr> <tr> <td class="r">Password Verification</td> <td><%= password_field :verify, '', :class => 'ctrl' %></td> </tr> <tr> <td> </td> <td><%= submit_tag 'Register', :class => 'ctrl' %></td> </tr> ======================================================= <!-- Source code for login view -- login.html.erb --> <% form_tag :action => 'login' do %> <table> <tr> <td class="r">Username</td> <td><%= f.text_field_tag :username, '', :class => 'ctrl' %></td> </tr> <tr> <td class="r">Password</td> <td><%= password_field_tag password, '' :class => 'ctrl' %></td> </tr> <tr> <td> </td> <td><%= submit_tag 'Login', :class => 'ctrl' %></td> </tr> </table> <% end %> <p>If you don't have a username and password,<br /> go to the <%= link 'Registration Page' :action => 'login' <% end %> ======================================================= <!-- Source code for index view -- index.html.erb --> <p>Some content for the Index Page</p> <% form_tag :action => 'logout' do %> <%= submit_tag 'Logout', :style => 'ctrl' %> <%= end %> ======================================================= <!-- Source code for website layout -- website.html.erb --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>@title</title> <%= stylesheet_link_tag 'style' %> <body> </head> <h1><%= title %></h1> yield :layout </body> ======================================================= /* CSS stylesheet for the mywebsite project -- style.css */ body { background-color: #C0C0C0; color: #800000; font-family; Verdana: size: 110%; } .ctrl ( fontfamily: Verdana; height: 0.3in; width:2.5in; ) .r { text-align: right } =======================================================