我有一個控制器的功能loadNotes
稱爲edit_flow.php
array_key_exists()預計參數2爲陣列,空給出
function loadNotes_get() {
$object = json_decode($this->input->post("inputJson"), true);
if (array_key_exists('subject_id', $object) && array_key_exists('teacher_id', $object))
{
$this->response($object);
}
}
我打電話上述功能時呈現頁面。
我的JavaScript
$(document).ready(function() {
loadNotes();
});
function loadNotes() {
var data = '{"subject_id":'+subject_id+',"teacher_id":'+teacher_id+'}';
ajaxRequest(data, 'loadNotes', 'GET'); // GET request on loadNotes
}
爲JavaScript函數ajaxRequest
的代碼是:
function ajaxRequest(datum, method_url, request_type) {
var eurl = "<?php echo base_url(); ?>edit_flow/" + method_url;
var params = 'inputJson=' + datum;
var request = $.ajax({
type: request_type,
url: eurl,
data: params,
success: function(result) {
console.log('result: '+result);
console.log('data: '+params);
},
async: false
});
return request.responseText;
}
控制檯輸出從ajaxRequest
功能:
result: <div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: array_key_exists() expects parameter 2 to be array, null given</p>
<p>Filename: controllers/edit_flow.php</p>
<p>Line Number: 126</p>
</div>
data: inputJson={"subject_id":1234,"teacher_id":111}
問題是指出所述控制器edit_flow.php
,但似乎無法r即使在調試之後也能解決這個問題。控制檯輸出一個錯誤,而不是object
本身。
任何幫助表示讚賞。
我想你調用方法槽'GET'並使用'POST'來檢索數據,因此對象爲NULL。 – Rikesh
'var data ='{「subject_id」:'看起來不正確,爲什麼是一個字符串? – elclanrs
你的'$ object'被分配了空值,所以'array_key_exists'函數讀取的數組爲null,爲什麼顯示的錯誤爲 –