我正在使用 Codeigniter 创建基于 WebSocket 的应用程序。因此,数据以 JSON 字符串的形式出现(不是 POST 方法)。我想使用 Codeigniter 的内置 form_validation 方法来验证以 JSON 格式接收的数据。
这是我到目前为止尝试设置变量的方法,因此我可以通过 $this->input->post('variable_name')
访问它但是。
尝试 #1
$_POST['variable_name'] = !isset($data['variable_name']) ? NULL : $data['variable_name'];
尝试 #2
$variable_name = !isset($data['variable_name']) ? NULL : $data['variable_name'];
$this->form_validation->set_value("variable_name", $variable_name);
但是当我使用 $this->input->post('variable_name')
它返回 NULL
。
最佳答案
我是这样实现的。虽然,这似乎不是一个准确的解决方案,但它很简单并且没有变通办法。
我在执行表单验证之前只添加了一行
$_SERVER["REQUEST_METHOD"] = "POST";
然后像这样设置变量
$_POST['post_var'] = "value";
现在设置验证规则并执行验证。
就是这样:)
关于php - 在 $_POST 变量中设置值以通过 Codeigniter 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33652453/