头歌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     --> 
相关文章
|
1月前
|
程序员 Go PHP
为什么大部分的 PHP 程序员转不了 Go 语言?
【9月更文挑战第8天】大部分 PHP 程序员难以转向 Go 语言,主要因为:一、编程习惯与思维方式差异,如语法风格和编程范式;二、学习成本高,需掌握新知识体系且面临项目压力;三、职业发展考量,现有技能价值及市场需求不确定性。学习新语言虽有挑战,但对拓宽职业道路至关重要。
75 10
|
14天前
|
JavaScript 前端开发 安全
php学习笔记-普通表单参数提交获取及页面的重定向和一个登录小demo-day05
本文介绍了PHP中普通表单参数的提交获取、页面重定向的方法,并通过一个登录示例演示了表单参数的封装和页面跳转处理。
|
14天前
|
JavaScript Java PHP
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
本文是第二天的PHP学习笔记,涵盖了PHP中运算符的使用、类型转换方式,以及打印输出语句的特点,展示了其相较于其他编程语言的一些特殊之处。
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
|
13天前
|
XML 前端开发 JavaScript
php中Ajax的简单使用,登录表单调用Ajax判断是否正确登录利用layer.msg进行提示
本文介绍了在PHP中如何使用Ajax进行登录表单的数据提交,并利用jQuery的$.post()方法与后端通信,以及使用layer.msg进行前端提示。
php中Ajax的简单使用,登录表单调用Ajax判断是否正确登录利用layer.msg进行提示
|
1月前
|
算法 程序员 Go
PHP 程序员学会了 Go 语言就能唬住面试官吗?
【9月更文挑战第8天】学会Go语言可提升PHP程序员的面试印象,但不足以 solely “唬住” 面试官。学习新语言能展现学习能力、拓宽技术视野,并增加就业机会。然而,实际项目经验、深入理解语言特性和综合能力更为关键。全面展示这些方面才能真正提升面试成功率。
45 10
|
1月前
|
IDE 关系型数据库 PHP
php语言学习
【9月更文挑战第1天】php语言学习
30 3
|
1月前
|
SQL 关系型数据库 MySQL
PHP语言
【9月更文挑战第1天】PHP语言
26 2
|
2月前
|
PHP 数据格式
PHP表单
PHP表单
27 1
|
2月前
|
安全 JavaScript 前端开发
PHP与现代Web开发:探索语言的演变和挑战
【8月更文挑战第9天】本文深入探讨了PHP作为一门历史悠久的编程语言在现代Web开发中的地位,分析了它如何适应不断变化的技术环境。文章首先回顾了PHP的起源及其在Web开发中的早期应用,随后讨论了PHP 7及更高版本带来的性能提升和新特性,以及这些变化对开发者的意义。最后,文章探讨了PHP面临的挑战,包括与其他现代编程语言的竞争,安全性问题,以及社区和生态系统的支持。通过这篇文章,读者将获得对PHP在现代Web开发中角色的全面理解,以及它如何继续发展以适应新的技术要求。
28 3
|
2月前
|
安全 Java 云计算
JSF 应用究竟何去何从?云端部署能否成为其全新突破点?快来一探究竟!
【8月更文挑战第31天】本文介绍了将JavaServer Faces(JSF)应用部署到云平台的过程。首先,根据成本、功能、可靠性和安全性选择合适的云平台。接着,展示了构建简单JSF应用的示例代码。最后,以AWS Elastic Beanstalk为例,详细说明了部署流程。部署至云端可提升应用的可用性、扩展性和安全性。
34 0