在 func1 中设置属性值,在 func2 PHP7 中获取属性值

我是 php7 的新手,我正在使用 MVC。故事是这样的:服务器通过 Ajax(方法 A)向用户发送一个 keyCode。然后用户通过表单将 keyCode 发送到(方法 B)。我已将 keyCode 保存到方法 A 中名为 $beforCode 的属性中。现在我想在方法 B 中检查用户发送给我的 keyCode。但问题是方法 BI 无法获取我拥有的属性 keyCode 的值保存在方法 A 中。属性 keyCode 为空。


这是我的代码:


class Payment extends Controller{


    public $keyCode = '';


    function setUserKeyCode(){ /// method A


        $code = $this->model->getKey();

        $this->keyCode = $code;


        /// echo $this->keyCode |  $this->keyCode equaled with $code

        echo $code; /// user get this by AJAX

    }



    function checkKeyCode(){ /// method B


         $userSentCode = $_POST['meKey']; /// user send this by Form

         $Key = $this->keyCode; /// echo $Key | $key = ''     <--- problem


         if ($clientCode == $key ) {

             echo 'user is valid';

         } 

         else {

             echo 'user is NON-valid';

         }

    }


}

*****如果有人有任何其他方式申请这份工作,请告诉我。谢谢你们


呼啦一阵风
浏览 178回答 1
1回答

慕娘9325324

这是因为你的ajax动作和用户的post动作不在同一个进程中,PHP对不同的请求使用不同的进程。它不是同一个 Payment 对象,因此您无法获取密钥。对于您的问题,我建议将键值保存到会话中。session_start();$_SESSION["code"]=$code;并得到它:session_start();$code = $_SESSION["code"];
打开App,查看更多内容
随时随地看视频慕课网APP