无聊却常用的代码生成(简单窗体验证)

本文提供了一个Python脚本,用于生成HTML表单的验证代码,包括姓名、地址、邮编、电子邮件和电话等字段的验证。代码使用JavaScript进行前端验证,并提供了PHP后端处理表单数据的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# -*- coding: gbk -*-
fields = [
    [
'linkman''姓名'],
    [
'address''家庭住址'],
    [
'zip''邮编'],
    [
'email''电子邮件'],
    [
'phoneHome''家庭电话'],
    [
'phoneMobile''移动电话']
]

print """form validation:
---------------------------------------------------------
"""
print """
String.prototype.trim = function() {
    return this.replace(/^(/s+)|(/s+)$/g, '');
}
"""

template 
= """
    var obj_%s = document.all('%s');
    if (obj_%s.value.trim() == '') {
        alert('请输入%s');
        obj_%s.focus();
        return false;
    }
"""

print "function checkForm() {"

for x in fields:
    
print template % (x[0], x[0], x[0], x[1], x[0])
    
if x[0] == 'email':
        
print """
    if (obj_email.value.trim().match(//w+([-+.']/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*/) == null) {
        alert('请输入正确的电子邮件');
        obj_email.focus();
        return false;
    }
    
"""

print """
    return true;
}
"""

print """// php:
------------------------------------------------------------
""";
for x in fields:
    
print "$%s = addslashes($_POST['%s']);" % (x[0], x[0])

结果:
>pythonw -u "validate_code_generator.py"
form validation:
---------------------------------------------------------

String.prototype.trim = function() {
    return this.replace(/^(/s+)|(/s+)$/g, '');
}

function checkForm() {

    var obj_linkman = document.all('linkman');
    if (obj_linkman.value.trim() == '') {
        alert('请输入姓名');
        obj_linkman.focus();
        return false;
    }


    var obj_address = document.all('address');
    if (obj_address.value.trim() == '') {
        alert('请输入家庭住址');
        obj_address.focus();
        return false;
    }


    var obj_zip = document.all('zip');
    if (obj_zip.value.trim() == '') {
        alert('请输入邮编');
        obj_zip.focus();
        return false;
    }


    var obj_email = document.all('email');
    if (obj_email.value.trim() == '') {
        alert('请输入电子邮件');
        obj_email.focus();
        return false;
    }


    if (obj_email.value.trim().match(//w+([-+.']/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*/) == null) {
        alert('请输入正确的电子邮件');
        obj_email.focus();
        return false;
    }
    

    var obj_phoneHome = document.all('phoneHome');
    if (obj_phoneHome.value.trim() == '') {
        alert('请输入家庭电话');
        obj_phoneHome.focus();
        return false;
    }


    var obj_phoneMobile = document.all('phoneMobile');
    if (obj_phoneMobile.value.trim() == '') {
        alert('请输入移动电话');
        obj_phoneMobile.focus();
        return false;
    }


    return true;
}

// php:
------------------------------------------------------------
$linkman = addslashes($_POST['linkman']);
$address = addslashes($_POST['address']);
$zip = addslashes($_POST['zip']);
$email = addslashes($_POST['email']);
$phoneHome = addslashes($_POST['phoneHome']);
$phoneMobile = addslashes($_POST['phoneMobile']);
>Exit code: 0    Time: 0.219
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值