php - 如何从 javascript 执行 php 头脚本?

标签 php javascript jquery

我有以下脚本validation.php

<?php
if(!isset($_SESSION['userId'])){
    session_destroy();
    header('Location: home.php');
    exit;    
}
?>

我想在每次有人单击#main-display中的按钮时执行此脚本

$("#main-display").on('click', 'button', function (event){
    //some code in here
});

我该如何去做呢?

最佳答案

您无法直接在 ajax 请求中进行重定向,因为它只会将响应页面重定向到 home.php 而不是当前的主 DOM 窗口。

您必须在 php 中将其修改为类似以下内容:

   if(!isset($_SESSION['userId'])){
       session_destroy();
       $response['status'] = 'false';
   }
   else {
       $response['status'] = 'true';
   }
   echo json_encode($response);

然后是 JavaScript

$("#main-display").on('click', 'button', function (event){
     $.getJSON('/path/to/loginStatus.php', {}, function(response) {
          if(response.status == 'false') {
               location.href = 'home.php';
           }
     });    
});

关于php - 如何从 javascript 执行 php 头脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9769038/

相关文章:

php - 如何列出所有 mySQL 记录并为每条记录提供更新按钮?

php mysql 从表循环行更新数组

javascript - 在 javascript 中的 php-Statement 上使用 php 进行循环

php - $.post 返回(空字符串)

javascript - 如何在html中向div添加Ajax响应

php - 优化 AJAX 网站以使用最少的资源

javascript - Vue.js 不渲染组件

javascript - 使用书签将当前页面上的图像保存到远程服务器

javascript - 在mapbox/leaflet上聚类geojson文件

javascript - 将图像挤压到窗口中,除非窗口比图像大