Hi, could anybody help me try to get a login function working, I have created a database for users called user1, I have the login screen set up but when i hit login with a correct username and password, nothing happens I am expecting the lgin button to direct the user to the main page and show the user as logged on, but nothing happens! Thanks! Controller class User1Controller < ApplicationController def index @title = "Temporary View" @users = User1.find(:all) end def register @title = "Register" if request.post? @user = User1.new(params[:user1]) if @user.save session[:user_id] = @user.id flash[:notice] = "User with login #{@user.screen_name} created!" redirect_to :action => :index end end end end def login @title = "Title" if request.post? @user = User1.new(params[:user1]) user = User.find_by_screen_name_and_password(@user.screen_name, @user.password) if user session[:user_id] = user.id flash[:notice] = "User #{user.screen_name} logged in" redirect_to :action => "index" else # Don''t show the password in the view @user.password = nil flash[:notice] = "Invalid email/password combination" end end end def logout session[:user_id] = nil flash[:notice] = "Logged out" redirect_to :controller => :site, :action => :index end end -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On 24 January 2011 16:25, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote:> Hi, could anybody help me try to get a login function working, I have > created a database for users called user1, I have the login screen set > up but when i hit login with a correct username and password, nothing > happens > > I am expecting the lgin button to direct the user to the main page and > show the user as logged on, but nothing happens! Thanks!The first thing to do is see whether the button click is sending you to the correct controller/action. Do you see what you expect in the log file when you click the button (log/development.log)? If not if you view the html of the page with the button (View, Page Source or similar in your browser) does it look correct? Have you validated the html of the page? Copy the complete html of the page and paste it into the w3c html validator. If still no joy post the view code and the bit of the log from when you click the button. Colin -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Colin Law wrote in post #977179:> On 24 January 2011 16:25, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote: >> Hi, could anybody help me try to get a login function working, I have >> created a database for users called user1, I have the login screen set >> up but when i hit login with a correct username and password, nothing >> happens >> >> I am expecting the lgin button to direct the user to the main page and >> show the user as logged on, but nothing happens! Thanks! > > The first thing to do is see whether the button click is sending you > to the correct controller/action. > Do you see what you expect in the log file when you click the button > (log/development.log)? > If not if you view the html of the page with the button (View, Page > Source or similar in your browser) does it look correct? > Have you validated the html of the page? Copy the complete html of > the page and paste it into the w3c html validator. > > If still no joy post the view code and the bit of the log from when > you click the button. > > ColinHi , thanks for the reply The development.log only shows info about database migrations here is the login.html <h1>Login</h1> <%= error_messages_for :user %> <% form_for :user do |f| %> <p> <%= f.label :screen_name %>: <%= f.text_field :screen_name %> </p> <p> <%= f.label :password %>: <%= f.password_field :password %> </p> <p> <%= f.submit "Login" %> </p> <p> Not a member? <%= link_to "Register now!", :action => "register" %> </p> <% end %> and view source in web browser is <h1>Login</h1> <form action="/Application/user1/login" method="post"> <p> <label for="user_screen_name">Screen name</label>: <input id="user_screen_name" name="user[screen_name]" size="30" type="text" /> </p> <p> <label for="user_password">Password</label>: <input id="user_password" name="user[password]" size="30" type="password" /> </p> <p> <input id="user_submit" name="commit" type="submit" value="Login" /> </p> <p> Not a member? <a href="/Depot_Application/user1/register">Register now!</a> </p> </form> I get two errors ,one because i have not declared document type and one that says the form element is not allowed...howeveer this is the code that i have taken from a book, so i presume that it should work? -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On 24 January 2011 17:20, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote:> Colin Law wrote in post #977179: >> On 24 January 2011 16:25, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote: >>> Hi, could anybody help me try to get a login function working, I have >>> created a database for users called user1, I have the login screen set >>> up but when i hit login with a correct username and password, nothing >>> happens >>> >>> I am expecting the lgin button to direct the user to the main page and >>> show the user as logged on, but nothing happens! Thanks! >> >> The first thing to do is see whether the button click is sending you >> to the correct controller/action. >> Do you see what you expect in the log file when you click the button >> (log/development.log)? >> If not if you view the html of the page with the button (View, Page >> Source or similar in your browser) does it look correct? >> Have you validated the html of the page? Copy the complete html of >> the page and paste it into the w3c html validator. >> >> If still no joy post the view code and the bit of the log from when >> you click the button. >> >> Colin > > Hi , thanks for the reply > > The development.log only shows info about database migrations > > > here is the login.html > <h1>Login</h1> > <%= error_messages_for :user %> > <% form_for :user do |f| %> > <p> > <%= f.label :screen_name %>: > <%= f.text_field :screen_name %> > </p> > <p> > <%= f.label :password %>: > <%= f.password_field :password %> > </p> > <p> > <%= f.submit "Login" %> > </p> > <p> > Not a member? <%= link_to "Register now!", :action => "register" %> > </p> > > <% end %> > > > and view source in web browser is > > <h1>Login</h1> > > <form action="/Application/user1/login" method="post"> > <p> > <label for="user_screen_name">Screen name</label>: > <input id="user_screen_name" name="user[screen_name]" size="30" > type="text" /> > </p> > <p> > <label for="user_password">Password</label>: > <input id="user_password" name="user[password]" size="30" > type="password" /> > </p> > <p> > <input id="user_submit" name="commit" type="submit" value="Login" /> > </p> > <p> > Not a member? <a href="/Depot_Application/user1/register">Register > now!</a> > </p> > > </form> > > I get two errors ,one because i have not declared document type and one > that says the form element is not allowed...howeveer this is the code > that i have taken from a book, so i presume that it should work?If you have a form element where it is not allowed then it is not surprising that you have a problem. Colin -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Okay I see a problem When I hover over the login button in the login page, the url for the button is the same page...which is strange....because i have directed it to go to the main page -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
hhhmm.I don''t understand why login submit button staying on the same page though? I tried redirecting to a url via the login button but it still stays on the same page , tried directing to another page in the rails application, again nothing...any ideas? -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On 24 January 2011 17:27, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote:> Okay I see a problem > > When I hover over the login button in the login page, the url for the > button is the same page...which is strange....because i have directed it > to go to the main pageWe might have some hope of helping if you were to post the view code with the login button on it. But fix the form tag first. On the assumption that the button is the submit for the form then if the form tag is invalid then the submit is unlikely to work. Colin -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Colin Law wrote in post #977241:> On 24 January 2011 17:27, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote: >> Okay I see a problem >> >> When I hover over the login button in the login page, the url for the >> button is the same page...which is strange....because i have directed it >> to go to the main page > > We might have some hope of helping if you were to post the view code > with the login button on it. But fix the form tag first. On the > assumption that the button is the submit for the form then if the form > tag is invalid then the submit is unlikely to work. > > ColinHi again,Appreciate the response. the view codes should be above on the third post in this thread , the first one is for the View and the next one is the source code as it appears on the browser. Here is the code relevant to the login button Apps/View <p> <%= f.submit "Login" %> </p> Browser <p> <input id="user_submit" name="commit" type="submit" value="Login" /> </p> and here is my controller login , which should direct the user to the main page after they enter in their details... def login @title = "Title" if request.post? @user = User1.new(params[:user1]) user = User.find_by_screen_name_and_password(@user.screen_name, @user.password) if user session[:user_id] = user.id flash[:notice] = "User #{user.screen_name} logged in" redirect_to :action => "index" else # Don''t show the password in the view @user.password = nil flash[:notice] = "Invalid email/password combination" end end end -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On 24 January 2011 21:12, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote:> Colin Law wrote in post #977241: >> On 24 January 2011 17:27, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote: >>> Okay I see a problem >>> >>> When I hover over the login button in the login page, the url for the >>> button is the same page...which is strange....because i have directed it >>> to go to the main page >> >> We might have some hope of helping if you were to post the view code >> with the login button on it. But fix the form tag first. On the >> assumption that the button is the submit for the form then if the form >> tag is invalid then the submit is unlikely to work. >> >> Colin > > Hi again,Appreciate the response. the view codes should be above on the > third post in this thread , the first one is for the View and the next > one is the source code as it appears on the browser. Here is the code > relevant to the login buttonSorry, I missed that in the previous post. So have you managed to get the html through the validator yet? There is no point investigating further until the html is valid.> > Apps/View > > <p> > <%= f.submit "Login" %> > </p> > > > Browser > > <p> > <input id="user_submit" name="commit" type="submit" value="Login" /> > </p> > > > > and here is my controller login , which should direct the user to the > main page after they enter in their details...There is no point posting this as, unless I misunderstand, it is not even getting to this code. Colin> > > > > def login > @title = "Title" > > if request.post? > @user = User1.new(params[:user1]) > user = User.find_by_screen_name_and_password(@user.screen_name, > @user.password) > if user > session[:user_id] = user.id > flash[:notice] = "User #{user.screen_name} logged in" > redirect_to :action => "index" > else > # Don''t show the password in the view > -eTHPNk8gMIsNG5+lYJWuzQ@public.gmane.org = nil > flash[:notice] = "Invalid email/password combination" > end > > > end > end > > -- > Posted via http://www.ruby-forum.com/. > > -- > You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. > For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en. > >-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Okay, changed code in line will a sample application which i have tested to work and confirmed as working, and the same problem persists... -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
okay... In my other view files asscociated with my other controllers the files end in rhtml...ie index.rhtml My files end in html for my user files...i.e index.html Is this a problem? -- Posted via http://www.ruby-forum.com/. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On 24 January 2011 22:02, Simon M. <lists-fsXkhYbjdPsEEoCn2XhGlw@public.gmane.org> wrote:> okay... > > In my other view files asscociated with my other controllers the files > end in rhtml...ie index.rhtml > > My files end in html for my user files...i.e index.html > > > Is this a problem?I would expect it to be a problem. The current standard is to use .html.erb which tells rails that it is to be interpreted as erb. .rhtml is old but should still work ok I expect. I would be surprised if .html worked for files with erb, but if it did not then <% ... %> would not be interpreted so it would be fairly obvious. Are you following an ancient tutorial? It is essential that the tutorial you are following matches the version of Rails you are using (at least to the major revision, Rails 2 or 3). Colin -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.