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';?>
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号