>백엔드 개발 >PHP 튜토리얼 >PHP页面控制器里用if/exit处理各种前端JS发出的"事件/操作/请求"

PHP页面控制器里用if/exit处理各种前端JS发出的"事件/操作/请求"

WBOY
WBOY원래의
2016-06-20 12:29:25696검색

JS是前端,PHP是后端,后端PHP要获取前端JS的变量,那前端JS可以通过AJAX传输数据给后端PHP.
比如登录页面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으로 문의하세요.
이전 기사:lnmp搭建之php5.5.34的安装다음 기사:php乱码