hi

is it possible to use recaptcha in custom forms?
i've already tested it but it return an error :
Traceback

1.
2.
3.
4.
5.
6.
7.
8.

Traceback (most recent call last):
  File "/home/stifank/Desktop/web2py/gluon/restricted.py", line 212, in 
restricted
    exec ccode in environment
  File 
"/home/stifank/Desktop/web2py/applications/stifix/views/default/contact_us.html",
 line 164, in <module>
  File "/home/stifank/Desktop/web2py/gluon/tools.py", line 732, in __init__
    self.remote_addr = request.env.remote_addr
AttributeError: 'NoneType' object has no attribute 'env'


the things that i've done :
*models/db.py*
db.define_table('contact_us',
    Field('name', notnull=True),
    Field('email', notnull=True),
    Field('phone', notnull=True),
    Field('address', 'text', notnull=True),
    Field('city', notnull=True),
    Field('messages', 'text', notnull=True),
    format='%(email)s %(name)s')

from gluon.tools import Recaptcha
db.contact_us.captcha = Recaptcha(request,
    'PUBLIC_KEY', 'PRIVATE_KEY')

*controllers/default.py*
def contact_us():
    form=SQLFORM(db.contact_us)
    if form.process().accepted:
        response.flash = T('messages sent')
    elif form.errors:
        response.flash = T('there is an error in the form')
    else:
        response.flash = T('please fill out the form')
    return dict(form=form)

*views/default/contact_us.html*
{{=form.custom.begin}}
<table>
    <tbody>
        <tr>
            <td>{{=DIV(B(T(form.custom.label.name), SPAN(' *', 
_style='color:red')))}}
            {{=DIV(form.custom.widget.name)}}
            </td>
            <td>{{=DIV(B(T(form.custom.label.email), SPAN(' *', 
_style='color:red')))}}
            {{=DIV(form.custom.widget.email)}}
            </td>
        </tr>
        <tr>
            <td>{{=DIV(B(T(form.custom.label.phone), SPAN(' *', 
_style='color:red')))}}
            {{=DIV(form.custom.widget.phone)}}
            </td>
            <td>{{=DIV(B(T(form.custom.label.city), SPAN(' *', 
_style='color:red')))}}
            {{=DIV(form.custom.widget.city)}}
            </td>
        </tr>
        <tr>
            <td colspan=2>{{=DIV(B(T(form.custom.label.address), SPAN(' *', 
_style='color:red')))}}
            {{=DIV(form.custom.widget.address)}}
            </td>
        </tr>
        <tr>
            <td colspan=2>{{=DIV(B(T(form.custom.label.messages), SPAN(' 
*', _style='color:red')))}}
            {{=DIV(form.custom.widget.messages)}}
            </td>
        </tr>
        <tr>
*            <td colspan=2>{{=DIV(Recaptcha(error_message='invalid', 
label='Verify:', options='theme:"white", lang:"fr"'))}}*
*            </td>*
        </tr>
        <tr>
            <td colspan=2>{{=DIV(form.custom.submit)}}
            </td>
        </tr>
    </tbody>
</table>
{{=form.custom.end}}

did anyone knows how to achieve it?
thank you

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to