ホームページ >バックエンド開発 >PHPチュートリアル >PHP ページ コントローラーの if/exit を使用して、さまざまなフロントエンド JS によって発行される「イベント/操作/リクエスト」を処理します。

PHP ページ コントローラーの if/exit を使用して、さまざまなフロントエンド JS によって発行される「イベント/操作/リクエスト」を処理します。

WBOY
WBOYオリジナル
2016-06-20 12:29:25696ブラウズ

JS はフロントエンド、PHP はバックエンドです。バックエンド PHP はフロントエンド JS の変数を取得する必要があります。その後、フロントエンド JS は、バックエンド PHP にデータを送信できます。 AJAX。
たとえば、ログイン ページの login.php:

/login.php           显示登录界面(默认)/login.php?a=login   处理登录事件(表单)<?phpif (!defined('APP_ROOT')) define('APP_ROOT', './');require APP_ROOT.'include/common.php'; // 加载functions.php,验证cookie等//后端PHP使用if处理各种前端JS发出的"事件/操作/请求",处理完成exit退出if(isset($_GET['action']) && $_GET['action']==='login') {    if(isset($_POST['name'])    && isset($_POST['pass'])    && $_POST['name']==='ele'    && $_POST['pass']===123) {        $ret['num'] = 0;        $ret['txt'] = '登录成功';        echo json_encode($ret);        exit();        } else {        $ret['num'] = 1;        $ret['txt'] = '登录失败';        echo json_encode($ret);        exit();        }}?><?php//下面的 "header.php + 登录表单 + footer.php" //可以考虑写一个render函数加载,从而分离界面和上面的逻辑require 'header.php';?><?php//下面显示登录表单(PHP+HTML+AJAX)?><script src="<?php echo $app['theme_dir']; ?>/js/jquery.js"></script><script>//给登录按钮绑定点击事件$('.con').on('click', '.login', function(){    $(this).text('正在登录');    var context = this;    $.ajax(        url: 'login.php?action=login',        type: 'POST',        //这里就是JS传输给PHP的变量,可以通过DOM获取        data: 'name='+$('.name').val()+'&pass='+$('.pass').val(),        success: function(data){            var obj = $.parseJSON(data);            console.log(obj);            //JS根据PHP返回值进行相应操作            if(obj.num==0) {                $(context).text(obj.txt);                setTimeout(function(){                    //1秒后跳转到首页                    window.location.href = '/';                }, 1000);            } else {                $(context).text(obj.txt);                setTimeout(function(){                    $(context).text('登录');                }, 1000);            }        }    );});</script><?phprequire 'footer.php';?>



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。