我是 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'; } }}*****如果有人有任何其他方式申请这份工作,请告诉我。谢谢你们
1 回答
慕娘9325324
TA贡献1783条经验 获得超4个赞
这是因为你的ajax动作和用户的post动作不在同一个进程中,PHP对不同的请求使用不同的进程。它不是同一个 Payment 对象,因此您无法获取密钥。
对于您的问题,我建议将键值保存到会话中。
session_start();
$_SESSION["code"]=$code;
并得到它:
session_start();
$code = $_SESSION["code"];
- 1 回答
- 0 关注
- 177 浏览
添加回答
举报
0/150
提交
取消