PHP 警告:未定义的数组键 [duplicate]

PHP Warning: Undefined array key [duplicate]

提问人:Muhammad Mirza 提问时间:3/22/2022 最后编辑:Jose LoraMuhammad Mirza 更新时间:3/22/2022 访问量:15766

问:

我有一个 Opencart 3.0.3.8 php 8.0。如何修复此错误?

PHP 警告:未定义的数组键“admin-key” /home/websitename/storage/modification/admin/controller/common/login.php 在线 92

这是第 92 行。

if ($this->request->post['admin-key'] != $this->config->get('config_adminkey')) {

请参阅下面的完整代码。

<file path="admin/controller/common/login.php">
    <operation>
        <search ><![CDATA[
        public function index() {
        ]]></search>
        <add position="after"><![CDATA[
        $data['config_adminkey'] = $this->config->get('config_adminkey');
    ]]></add>
    </operation>
    <operation>
        <search ><![CDATA[
        protected function validate() {
        ]]></search>
        <add position="after"><![CDATA[     
         if ($this->request->post['admin-key'] != $this->config->get('config_adminkey')) {
            header("Status: 404 Not Found");
            require  'view/template/extension/module/404.html';
            exit;

PHP 数组 未定义的 警告

评论


答:

0赞 Aqilhex 3/22/2022 #1

isset()应该解决你的问题。

更改此行:

if ($this->request->post['admin-key'] != $this->config->get('config_adminkey'))

到这个

if (isset($_POST['admin-key']) !== isset($_GET['config_adminkey']))

评论

0赞 Muhammad Mirza 3/22/2022
换行后。扩展停止工作。看起来我们还需要改变另一条线。
0赞 Aqilhex 3/23/2022
您应该使用 isset($this->request->post['admin-key']) @MuhammadMirza