PHP include/require 不传递变量

2023-12-27

是否可以在 PHP 中包含一些东西without传递传递给原始脚本的变量?

我正在使用 Joomla,并且我收到了错误记录here https://stackoverflow.com/questions/8356683/joomla-error-illegal-variable-files-or-env-or-get-or-post-or-cookie-or-s(“非法变量......”)。 php 脚本是一个 AJAX 脚本,它将数据发送回浏览器,因此该脚本需要大量 POST 变量,执行数据库查询,然后回显结果。我正在尝试加强安全性,因此我在此脚本中添加了一个包含内容,以使用内置的 Joomla 模块对用户进行身份验证。我的想法来自here https://stackoverflow.com/questions/2445549/how-to-get-current-joomla-user-with-external-php-script用于用户身份验证脚本。
身份验证脚本适用于某些页面,但对于其他页面,我收到上述错误。所以我想包含身份验证脚本而不向其传递任何变量。这可能吗?

编辑:这里有更多细节。

在ajax脚本中我有这个:

<?php
    include '/var/www/joomla-auth.php';
...

下面是脚本,基本上包含的“joomla-auth.php”脚本负责获取 mysql 查询的用户名和密码。 joomla-auth 的内容:

<?php

define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(__FILE__));
define( 'DS', DIRECTORY_SEPARATOR );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );

/* Create the Application */
$mainframe =& JFactory::getApplication('site');

/* Make sure we are logged in at all. */
if (JFactory::getUser()->id == 0)
    die("Access denied: login required.");

$user =& JFactory::getUser();

我很确定是定义或要求行引发了错误:

非法变量 _files 或 _env 或 _get 或 _post 或 _cookie 或 _server 或 _session 或传递给脚本的全局变量。

如上面第一个链接中所述。

EDIT 2:

“joomla-auth.php”脚本创建 $username 和 $password 变量,然后在 AJAX 脚本中使用它们。我在 AJAX 脚本的顶部尝试了这个:

function get_creds(){
    include '/var/www/joomla-auth.php';
    return Array($username,$password);
}

$creds = get_creds();
$username = $creds[0];
$password = $creds[1];
....

但 $_POST 变量仍然被传递到 /var/www/joomla-auth.php :-(


如果您将错误中提到的变量之一传递给 url(或通过 mod_rewrite),Joomla 会抛出此错误:

_files 或 _env 或 _get 或 _post 或 _cookie 或 _server 或 _session

此外,我认为如果您传递整个数字变量,也会引发相同的错误,例如:

http://yoursite.com/?123456=abc http://yoursite.com/?123456=abc

只需确保您没有在 url 中传递任何这些变量即可。如果找不到问题,请尝试在引发错误之前检查请求中的内容。

我希望它有帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP include/require 不传递变量 的相关文章

  • 如何在xampp中启用zip.dll

    你好 我正在使用 Windows 版 xampp 我想运行 https github com johmue mysql workbench schema exporter 导出我的架构 我在 mysql 工作台中创建架构并保存它 当我运行程
  • iPhone 应用程序拒绝 17.2:应用程序要求用户使用 Facebook 帐户登录

    我按照此处的本机 iOS 应用程序的登录说明进行操作https developers facebook com docs mobile ios build https developers facebook com docs mobile
  • 脚本超时已过,如果要完成导入,请重新提交相同的文件,导入将恢复

    我有一个数据库 拉开拉链后的尺寸50mb拉链尺寸7mb所以当我尝试导入数据库时zipped 7mb 几分钟后 它抛出此错误 脚本超时已过 如果您想完成导入 请resubmit相同的文件和导入将恢复 我已经重新提交了 但仍然没有导入全部数据
  • 如何自动更新数据库中的记录?

    我有一个工作表 在其中插入新工作 该表还包含职位发布日期 默认情况下 当发生新插入时 作业状态为打开状态 现在 当作业超过 30 天时 我想将作业状态从开放更改为关闭 我该怎么做 尝试创建一个每天运行的事件 如下所示 CREATE EVEN
  • 如何简单地检查服务器PHP版本是否为5或以上?

    我正在为程序创建预安装清单 该程序需要 PHP5 因此我需要检查列表脚本来检查 PHP5 的可用性 有一个函数为phpversion 将以以下格式返回5 3 6或类似的 然而 我希望清单非常简单 只是告诉你是或否 所以显示当前版本对我没有多
  • 从 ajax json 填充数据表

    我的表没有填充 我可以看到它正在获取正确的 JSON 收到的 JSON 数据如下所示 id 1 name FooBar predicted 0 points 1 section id 1 detail alias HTML table ta
  • 如何在 Laravel 5.3 中进行自定义身份验证

    我在 Laravel 5 3 自定义身份验证中遇到问题 希望在检查时使用我自己的函数或页面Auth check 它返回false 这是用户控制器 namespace App Http Controllers use App User use
  • 使用 Express 检测 NodeJS 上的 AJAX 请求

    我正在使用 NodeJS 和 Express 如何区分普通浏览器请求和 AJAX 请求 我知道我可以检查请求标头 但是 Node Exprsss 是否会公开此信息 大多数框架设置了X Requested With标头至XMLHttpRequ
  • 将 Php 数组编码为 json [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想对我的 php 数组进行编码 A
  • PHP 使用今天的日期生成一个随机数

    我正在尝试为内容块 在网页上 分配一个随机生成的数字 该数字基于今天的日期 无论是什么 和固定数字 由于某种原因 输出的数字种类存在巨大差异 例如 当我在本地测试我的代码时 生成的数字对我来说足够好 正数 但在实际的实时服务器上时 它们通常
  • PHP 5.4 PDO 无法使用旧的不安全身份验证连接到 MySQL 4.1+

    我知道有很多类似的问题 事实上我已经阅读了所有 9 个问题 但是 他们都没有解决我的问题 我有一个共享托管包 最低限度 我的包中包含域名和托管 MySQL 服务器的单独 IP 地址 为了开发 我正在使用http localhost 与 PH
  • 如何在按钮上执行mysql [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions PHP 单击按钮时如何执行 SQL
  • 使用 PHP 将文件上传到 MySql DB

    我希望用户通过我在后端使用 MySql 用 PHP 开发的 web 应用程序上传文件 我想将文件存储在数据库中 我在这样做时遇到了问题 此外 一旦文件存储在数据库中 我们如何下载它 并在 web 应用程序中正确显示它 文件类型和文件的其他属
  • 正在 WordPress 中上传媒体,但显示错误“上传时发生错误。请稍后重试。”

    我试图在 WordPress 媒体上传中上传 jpeg 图像 上传时 显示错误 上传时发生错误 请稍后再试 上传时出现错误消息 但是当我重新加载页面时 图像显示在列表中 如下所示 重新加载页面后 所以 图片正在上传 这意味着不存在文件夹权限
  • 如何从 GridView TemplateColumn 单击触发 UpdatePanel?

    我有以下情况 我的所有控件都在页面上的更新面板上 这些控件之一是 GridView 该 GridView 在标题模板字段上包含一个复选框 以进行全部选中 autopostback 是 true 但是当检查更改时 没有任何更改 更新面板会触发
  • PHP7.1上读取会话数据失败

    分享一个我遇到的问题 现已解决 在我的开发机器上 我使用 PHP 运行 IIS 我升级到 PHP7 突然我的代码不再工作 返回此错误 session start 读取会话数据失败 用户 路径 C WINDOWS temp 看起来像是权限问题
  • snappy wkhtmltopdf 包装器将生成的 html 文件发送到浏览器

    我像鼹鼠一样用谷歌搜索 但找不到正确的方法 我正在使用 WKHTMLTOPDF Wrapper Snappy 创建 PDF 如何将使用generateFromHtml方法生成的pdf直接发送到浏览器 这就是我想做的 header Conte
  • CodeIgniter加入选择为

    我的数据库中有 2 个表需要加入 一张表是 artikelen 表 另一张表是 Collections 表 我目前有 this gt db gt select this gt db gt from collecties this gt db
  • Apache LOG:子进程 pid xxxx 退出信号分段错误 (11)

    Apache PHP Mysql Linux 注意 子进程 pid 23145 退出信号分段错误 11 tmp 中可能存在 coredump 但 tmp下没有找到任何东西 我怎样才能找到错误 PHP 代码中函数的无限循环导致了此错误
  • Web API 2.0 使用 pascalcase 模型接收驼峰式命名的 JSON 数据

    我正在尝试对我的 Web API 进行 PUT 调用 我在 WebApiConfig cs 中设置了以下内容 以处理以驼峰形式将数据发送回我的 Web 项目 config Formatters JsonFormatter Serialize

随机推荐

  • 从 XML 字段中选择,其中 XML 字段 = X

    所以我试图从 SQL Server 表中选择每条记录
  • 如何查找字符串中的空格?

    如何检查字符串是否包含空白字符 空格或 如果可以的话 请提供一个Java示例 例如 String test word 用于检查字符串是否包含空格 use a Matcher https docs oracle com javase 7 do
  • Kendo UI for Angular Grid Detail 展开/折叠按钮移至右侧?

    Kendo UI for Angular Grid Detail 展开 折叠按钮是否可以移动到网格右侧 看来 kendo ui 默认将展开 折叠到剑道网格的最左边一列 我需要看看是否可以将其移至右侧的按钮 我们可以通过使用一些自定义 CSS
  • 在 Laravel 中动态配置数据库连接

    在 Laravel 8 中 我尝试在两种情况下设置动态连接 登录后 根据用户设置自定义数据库连接 在这种情况下 登录后 在中间件中我调用一个方法 public static function changeConnection custome
  • 如何在 Angular 4 中打印 Angular 对象

    如何打印json值 我很基础 就像角度一样 请有人帮助我 测试 html projects li obj json li 服务 ts getProjects Promise
  • 如何在AngularJS中过滤多个值(OR运算)

    我想使用filter以角度表示并想要过滤多个值 如果它具有任一值 则应显示它 例如我有这样的结构 一个东西movie拥有以下财产genres我想过滤Action and Comedy 我知道我能做到filter genres Action
  • Bash 从列名中检索列号

    有没有更好的方法 例如 AWK 中的单行 可以获取带有列名标题的表中的列号 我希望能够独立于列号的实际值来处理列 例如 当添加另一列时 脚本不需要更改 例如 给出 table tsv 中的下表 ID Value Target Not Use
  • Vue 模型未更新

    当我尝试更新自定义文本区域组件的模型数据时this message span bar span 文本和 html 没有像应有的那样显示在 htmltextarea 标记中 但我可以在 Vue 开发工具的控制台中看到应用的更新 我还尝试切换到
  • 计算道具无法正常工作 Vue JS 2

    我正在按照 YT 上的一个频道学习 vue js 该视频是去年发送的 所以我认为由于 VueJS 本身的一些变化 它不起作用 但如果你们能帮助我 那就太好了 代码链接 http codepen io myrgato pen BWWxdQ h
  • 更新 MongoDB 中数组内数组内的嵌入对象

    我有类似的文件 id 100 heros nickname test spells spell id 61 level 1 spell id 1 level 2 I can t set咒语的level 3 with spell id 1 i
  • pandas 中 datetime 和 datetime64[ns] 的比较

    我正在编写一个程序来检查 Excel 文件 如果今天的日期在 Excel 文件的日期列中 我会解析它 我在用着 cur date datetime today 今天的约会 我正在检查今天是否在以下列中 bool val cur date i
  • Service Worker 无法使用 Nodejs 服务器以离线模式运行

    我一直在创建新项目 PWA 当我开发时不使用节点js socket io运行 只是像我预期和需要的那样离线运行 但是当与nodejs服务器集成时 当上线时 应用程序运行良好 没有任何问题 但是当我更改为离线模式时 我的服务无法运行 但显示离
  • 使用 Visual Studio 2012 进行部署时删除 ConnectionString

    我正在开发一个包含 2 个 Web 应用程序的项目 其中一个作为长时间运行的进程 使用 appfabric 托管 另一个只是一个普通的 MVC 应用程序 它们共享相同的数据上下文 因此共享相同的连接字符串 appfabric 应用程序被部署
  • 如何使用 Google Maps API v2 确定道路上的经纬度坐标

    我已经使用了谷歌地理地址并使用纬度 经度得到了地址 如何确定我是否在路上 基本上是道路碰撞测试 我目前正在使用位置管理器来管理纬度 经度 并且公路上和公路旁的地理地址相同 最终解决方案 Use 通过 Google Geocoding API
  • ASP.NET MVC ActionLink 保留“旧”路由参数

    我的两个过滤链接 Html ActionLink Customer 1 Index new customer 1 Html ActionLink Project A Index new project A 我的带有过滤功能的控制器 publ
  • 在图像周围浮动文本

    我需要帮助创建一个围绕价格标签浮动的文本容器 如下图所示 这是我到目前为止所尝试过的 jsFiddle 演示 http jsfiddle net kzmndzj4 HTML div class product p Lorem ipsum d
  • 返回 Lua 表中值的索引

    我在lua中有这张表 local values a b c 如果变量等于表条目之一 有没有办法返回表的索引 说 local onevalue a 如何在不迭代所有值的情况下获取表中 a 或一个值的索引 没有迭代就没有办法做到这一点 如果您发
  • 如何使用“setTimeout”调用对象本身

    为什么我不能使用setTimeout在 JavaScript 对象中 Message function this messageFactory this feedbackTag document getElementById feedbac
  • OpenACC + MPI Fortran 程序入门

    我有一个工作串行代码和一个通过 OpenACC 并行化的工作并行单 GPU 代码 现在我尝试通过在多个 GPU 上运行 采用 mpi openacc 范例来增加并行性 我用 Fortran 90 编写代码 并使用 Nvidia 的 HPC
  • PHP include/require 不传递变量

    是否可以在 PHP 中包含一些东西without传递传递给原始脚本的变量 我正在使用 Joomla 并且我收到了错误记录here https stackoverflow com questions 8356683 joomla error