Mohamed Ramzy Helmy
Mohamed Ramzy Helmy

Reputation: 269

how to get username on a page directed

Hello i am trying to make a sign up page and redirect it to a page that says thanks "user name" but how can i get the user name from sign up page

import webapp2,re
form = """
<form method='post'>
<h1>signup</h1>
username: <input name='username' value='%(uname)s'><span style='color:red;'>%(erru)s</span><br>
password: <input name='password' type='password' value='%(pass)s'><span style='color:red;'>%(errp)s</span><br>
verfy password: <input name='verfy' type='password' value='%(verf)s'><span style='color:red;'>%(errv)s</span><br>
email (optional): <input name='email' value='%(em)s'><span style='color:red;'>%(erre)s</span><br>
<input type='submit'>
</form>
"""
def valid_username(username):
    return re.match(r'^[a-zA-Z0-9_-]{3,20}$',username)
def valid_password(password):
    return re.match(r'^[a-zA-Z0-9_- ]{3,20}$',password)
def valid_email(email):
    return re.match(r'^[a-zA-Z0-9_]{3,20}[@][a-zA-Z][.]com$',email)
class Mainpage(webapp2.RequestHandler):
    def write_form(self,username='',usererr='',password='',verfy='',vererr='',email='',emerr='',perr=''):
        self.response.out.write(form%{'uname':username,'pass':password,'verf':verfy,'em':email,'errp':perr,'erru':usererr,'errv':vererr,'erre':emerr})
    def get(self):
        self.write_form()
    def post(self):
        usern = self.request.get('username')
        userp = self.request.get('password')
        userv = self.request.get('verfy')
        userm = self.request.get('email')
        self.redirect('/thanks')
class Thanks(webapp2.RequestHandler):
    def post(self):
        username = self.request.get('username')
        self.response.out.write(username)
app = webapp2.WSGIApplication([('/',Mainpage),('/thanks',Thanks)],debug=True)

405 Method Not Allowed
The method GET is not allowed for this resource. 

but when i complete the form it gives me this message

Upvotes: 0

Views: 38

Answers (1)

Klaus D.
Klaus D.

Reputation: 14369

  1. You store it in the session
  2. You add it to the redirect URL as GET parameter:

    self.redirect('/thanks?user=%s' % urllib.quote(self.request.get('username', 'new user')))

Upvotes: 1

Related Questions