头歌php 表单语言进阶

简介: 头歌php 表单语言进阶

PHP语言之表单进阶


第一关

/********** Begin *********/  
function formatted_input($data)  
{  
    $data = trim($data);  
    $data = stripslashes($data);  
    $data = htmlspecialchars($data);  
    return $data;  
}  
/********** End *********/  

 

第二关

/********** Begin *********/  
if ($_SERVER['REQUEST_METHOD'] == 'POST') {  
    if (empty($_POST['name'])) {  
        $nameErr = '名字是必需的';  
    } else {  
        $name = formatted_input($_POST['name']);  
    }
    if (empty($_POST['email'])) {  
        $emailErr = '邮箱是必需的';  
    } else {  
        $email = formatted_input($_POST['email']);  
    }
    if (empty($_POST['website'])) {  
        $website = '';  
    } else {  
        $website = formatted_input($_POST['website']);  
    }
    if (empty($_POST['comment'])) {  
        $comment = '';  
    } else {  
        $comment = formatted_input($_POST['comment']);  
    }
    if (empty($_POST['gender'])) {  
        $genderErr = '性别是必需的';  
    } else {  
        $gender = formatted_input($_POST['gender']);  
    }  
}  
/********** End *********/  

 

第三关

/********** Begin *********/  
if (!preg_match("/^[a-zA-Z ]*$/", $name)) {  
    $nameErr = '只允许字母和空格';  
    $name = '';  //格式非法,将$name变量清空  
}  
/********** End *********/
/********** Begin *********/  
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {  
    $emailErr = '非法的邮箱格式';  
    $email = '';  //格式非法,将$email变量清空  
}  
/********** End *********/
/********** Begin *********/  
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {  
    $websiteErr = '非法的 URL 地址';  
    $website = '';  //格式非法,将$website变量清空  
}  
/********** End *********/  

 

第四关

/********** Begin *********/  
$nameErr = $emailErr = $genderErr = $websiteErr = '';  
$name = $email = $gender = $comment = $website = '';  
if ($_SERVER['REQUEST_METHOD'] == 'POST') {  
    if (empty($_POST['name'])) {  
        $nameErr = '名字是必需的';  
    } else {  
        $name = formatted_input($_POST['name']);  
        if (!preg_match("/^[a-zA-Z ]*$/", $name)) {  
            $nameErr = '只允许字母和空格';  
            $name = '';  //格式非法,将$name变量清空  
        }  
    }  
    if (empty($_POST['email'])) {  
        $emailErr = '邮箱是必需的';  
    } else {  
        $email = formatted_input($_POST['email']);  
        if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {  
            $emailErr = '非法的邮箱格式';  
            $email = '';  //格式非法,将$email变量清空  
        }  
    }  
    if (empty($_POST['website'])) {  
        $website = '';  
    } else {  
        $website = formatted_input($_POST['website']);  
        if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {  
            $websiteErr = '非法的 URL 地址';  
            $website = '';  //格式非法,将$website变量清空  
        }  
    }  
    if (empty($_POST['comment'])) {  
        $comment = '';  
    } else {  
        $comment = formatted_input($_POST['comment']);  
    }  
    if (empty($_POST['gender'])) {  
        $genderErr = '性别是必需的';  
    } else {  
        $gender = formatted_input($_POST['gender']);  
    }  
}  
function formatted_input($data)  
{  
    $data = trim($data);  
    $data = stripslashes($data);  
    $data = htmlspecialchars($data);  
    return $data;  
}  
/********** End *********/
<!--     Begin     -->  
<form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>">  
    <label>  
        姓名:<input type="text" name="name">  
    </label>  
    <span class="error">* <?php echo $nameErr;?></span>  
    <br><br>  
    <label>  
        邮箱:<input type="text" name="email">  
        <span class="error">* <?php echo $emailErr;?></span>  
    </label>  
    <br><br>  
    <label>  
        博客:<input type="text" name="website">  
        <span class="error"><?php echo $websiteErr;?></span>  
    </label>  
    <br><br>  
    <label>  
        备注:<textarea name="comment" rows="5" cols="40"></textarea>  
    </label>  
    <br><br>  
    <label>  
        性别:<input type="radio" name="gender" value="male">男  
        <input type="radio" name="gender" value="female">女  
        <span class="error">* <?php echo $genderErr;?></span>  
    </label>  
    <br><br>  
    <input type="submit" name="submit" value="提交">  
</form>  
<!--     End     --> 
相关文章
|
3月前
|
程序员 Go PHP
为什么大部分的 PHP 程序员转不了 Go 语言?
【9月更文挑战第8天】大部分 PHP 程序员难以转向 Go 语言,主要因为:一、编程习惯与思维方式差异,如语法风格和编程范式;二、学习成本高,需掌握新知识体系且面临项目压力;三、职业发展考量,现有技能价值及市场需求不确定性。学习新语言虽有挑战,但对拓宽职业道路至关重要。
93 10
|
3月前
|
JavaScript 前端开发 安全
php学习笔记-普通表单参数提交获取及页面的重定向和一个登录小demo-day05
本文介绍了PHP中普通表单参数的提交获取、页面重定向的方法,并通过一个登录示例演示了表单参数的封装和页面跳转处理。
|
1月前
|
SQL 安全 数据挖掘
PHP表单的多方面应用与实践
通过本文的介绍,我们详细探讨了PHP表单的多方面应用与实践。从表单创建、数据验证、安全性、文件上传到多步表单处理,每个方面都有具体的示例和说明。通过掌握这些技术,开发者可以有效地处理表单数据,确保应用的安全性和可靠性。希望本文能为您在PHP开发中提供有价值的参考和指导。
29 2
|
1月前
|
PHP 容器
03 PHP语言基础知识
路老师的PHP教程系列,带你深入学习PHP语言。从常量、变量、操作符到表达式和函数,全面覆盖基础知识,助你快速入门并掌握核心技术。每天坚持学习,轻松成为PHP高手!
31 2
|
3月前
|
JavaScript Java PHP
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
本文是第二天的PHP学习笔记,涵盖了PHP中运算符的使用、类型转换方式,以及打印输出语句的特点,展示了其相较于其他编程语言的一些特殊之处。
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
|
3月前
|
XML 前端开发 JavaScript
php中Ajax的简单使用,登录表单调用Ajax判断是否正确登录利用layer.msg进行提示
本文介绍了在PHP中如何使用Ajax进行登录表单的数据提交,并利用jQuery的$.post()方法与后端通信,以及使用layer.msg进行前端提示。
php中Ajax的简单使用,登录表单调用Ajax判断是否正确登录利用layer.msg进行提示
|
3月前
|
算法 程序员 Go
PHP 程序员学会了 Go 语言就能唬住面试官吗?
【9月更文挑战第8天】学会Go语言可提升PHP程序员的面试印象,但不足以 solely “唬住” 面试官。学习新语言能展现学习能力、拓宽技术视野,并增加就业机会。然而,实际项目经验、深入理解语言特性和综合能力更为关键。全面展示这些方面才能真正提升面试成功率。
60 10
|
3月前
|
IDE 关系型数据库 PHP
php语言学习
【9月更文挑战第1天】php语言学习
40 3
|
3月前
|
SQL 关系型数据库 MySQL
PHP语言
【9月更文挑战第1天】PHP语言
35 2