分享

PHP丨前端网页是怎么跟后台进行数据交互的(实战)

 CKO养成计划 2020-09-27

本期需要用到的前面几期所讲过的内容:

这里是 PHP 网站开发的第三个阶段,也就是前端 HTML 及 CSS 所制作的网页是如何跟 PHP 后台代码进行交互的。

向后台提交数据


具体语法等请参考:数组《数据的发送与接收《变量

前端网页代码:

<!DOCTYPE html>

<html lang="zh-cmn">

<head>

    <meta charset="UTF-8">

    <title>留言本</title>

    <style>

        .wrap{width: 600px;margin: 0px auto;}

        .add{overflow: hidden;}

        .add .content{width: 598px;margin: 0;padding: 0;}

        .add .user{float: left;}

        .add .btn{float: right;}

        .msg{margin: 20px 0px;background: #ccc;padding: 5px;} 

        .msg .info{overflow: hidden;} 

        .msg .user{float: left;color: red;} 

        .msg .time{float: right;color: blue;} 

        .msg .contet{width: 100%;padding: :5px;} 

    </style>

</head>

<body>

   <div class="wrap">

        <!--    发表留言区    -->

        <div class="add">

        <form action="save.php" method="post">

            <textarea name="content" class="content" cols="50" rows="5"></textarea>

            <br/>

            <input name="user" class="user" type="text"/>

            <input class="btn" type="submit" value="发表留言"/>

        </div>

    </div>  

</body>

</html>

后端 PHP 文件代码:

<?php 

$content = $_POST['content']; 

$user = $_POST['user']; 

var_dump( $content,$user ); 

?>

效果:

点击 “发表留言” 后就可以看到效果〜

对留言内容进行检查


具体语法等请参考:运算符流程制

后端 PHP 文件代码:

<?php 

$content = $_POST['content']; 

$user = $_POST['user']; 

//禁止使用的用户名 

$n = [ 

    '张三', 

    '李四', 

    '王五', 

];

foreach ($n as $name) { 

    if ( $user == $name ) { 

        die("禁止使用的用户名"); 

    } 

}

//判断留言是否为空

if ( $content == '') { 

die("留言内容不能为空"); 

if ( $user == '') { 

die("留言人不能为空"); 

}

var_dump( $content,$user ); 

?>

效果:

可以看到当我们输入 “张三” ,也就是禁止使用的用户名,点击发表留言后会弹出 “禁止使用的用户名”:

对留言内容的处理进行封装


具体语法等请参考:《函数的基础语法

这里只是把上面 “对留言内容进行检查” 里面的代码进行函数封装,从而实现一次封装多次调用的效果。

后端 PHP 文件代码:

<?php 

$content = $_POST['content']; 

$user = $_POST['user']; 

//定义函数,对数据进行检查

function post( $content ){

    if ( $content == '') {

        return false;

    }

    //禁止使用的用户名

    $n = [ '张三', '李四', '王五'];

    foreach( $n as $name ){

        if ( $content == $name ) {

            return false;

        }

    }

    return true;

}

//调用函数,检查留言内容

$is = post( $content );

if ( $is == false ) {

    die('留言内容不能为空');

}

//调用函数,检查留言人

$is = post( $user );

if ( $is == 张三 ) {

    die('用户名输入不正确');

}

var_dump( $content,$user ); 

?>

这里在浏览器里输出的效果跟上面 “对留言内容进行检查” 的效果是一样的。

对函数进一步进行封装


具体语法等请参考:《类与对象

<?php 

$content = $_POST['content']; 

$user = $_POST['user']; 

//定义类 

class input{ 

    //定义函数,对数据进行检查 

    function post( $content ){

         if ( $content == '') { 

            return false; } 

        //禁止使用的用户名 

        $n = [ '张三', '李四', '王五' ]; 

        foreach( $n as $name ){ 

            if ( $content == $name ) { 

                return false; 

            } 

        }

         return true; 

    } 

//实例化类 

$input = new input(); 

//调用函数。检查留言内容 

$is = $input->post( $content );

if ( $is == false ) { 

    die('留言内容不能为空'); 

//调用函数,检查留言人 

$is = $input->post( $user ); 

if ( $is == false ) { 

    die('用户名输入不正确'); 

var_dump( $content,$user ); //输出 

?>

我们随便在浏览器的对话框输入一些内容:

点击发表留言后浏览器输出:

我们也可以把它拆成两个 PHP 文件:

代码 1:

<?php 

//定义类 

class input{ 

    //定义函数,对数据进行检查 

    function post( $content ){

         if ( $content == '') { 

            return false; } 

        //禁止使用的用户名 

        $n = [ '张三', '李四', '王五' ]; 

        foreach( $n as $name ){ 

            if ( $content == $name ) { 

                return false; 

            } 

        }

         return true; 

    } 

?>

我们把它保存为 input.php 文件,跟save.php文件放在同一目录。

代码 2:

<?php 

include('input.php');    //用include语法包含iput.php文件

$content = $_POST['content']; 

$user = $_POST['user']; 

//实例化类 

$input = new input(); 

//调用函数。检查留言内容 

$is = $input->post( $content );

if ( $is == false ) { 

    die('留言内容不能为空'); 

//调用函数,检查留言人 

$is = $input->post( $user ); 

if ( $is == false ) { 

    die('用户名输入不正确'); 

var_dump( $content,$user ); //输出 

?>

最终浏览器输出的内容跟之前输出的是一样的。

This is not the end.
 It is not even the beginning of the end. 

But it is,
 perhaps, the end of the beginning.

更多分享


三小时学会 HTML 网页编辑

HTML丨语言简介

HTML丨标签和属性

HTML丨基本结构与常用格式标签

HTML丨网页编辑实战

三小时学会 CSS 网页美化

CSS丨简介与引入方式

CSS丨选择器

CSS丨样式

CSS丨布局

CSS丨网页美化实战

PHP 网站开发

Web 网站的工作原理

开发前的准备工作

MAC 系统怎么搭建自带的 PHP 开发环境

PHP丨第一个 PHP 程序

PHP丨变量

PHP丨数据类型

PHP丨数组

PHP丨数据的发送与接收

PHP丨运算符

PHP丨流程控制

PHP丨函数的基础语法

PHP丨类与对象

效率工具

AutoCAD 2018附软件+注册机

AdobeCC 2018 破解全系列(WIN+MAC)

Office 2019 早期预览版(免激活)

免费看 VIP 视频,高速下载百度云,听高清网易云...你只差一个小插件

平面设计自学指南

小众电影

美国往事丨如果你的一生只能看一部电影的话,那就看这一部吧

蝴蝶丨我比你年轻,我还有余力等你(les题材)

东京夜空最深蓝丨活着吧,要活到死才对

荒野生存丨我想那么年轻,干净,那么寂寞地活着,直到可以突然失踪在马路上的那一天

小程序开发

0 基础要怎么自学小程序开发

小程序开发环境搭建和布署

微信开发者工具的认识

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多