データは次のようにフロントエンドから送信されています。
var data = {
'user_id':userid,
'qid':array[qnum].qid,
'user_ans':userAnswers[qnum].answer,
'user_time':userTime,
'exerciseid':exid,
'point_scored':points
};
$.post('<?php echo base_url()?>main/update_user_score',
{ myData : data },
function(result){} );
そして、私の「メイン」コントローラーには、次のものがあります。
$post_data = $_POST['myData'];
$data = array(
'user_id' => $post_data[user_id] ,
'qid' => $post_data[qid],
'user_ans' => $post_data[user_ans],
'user_time' => $post_data[user_time],
'exerciseid' => $post_data[exerciseid],
'point_scored' => $post_data[point_scored]
);
$this->load->model('Question_model','questions');
$this->questions->update_user_attempt($data);
私の Question_model / update_user_attempt では:
error_log("data in model BEFORE INSERT:" . json_encode($data));
$this->db->insert('user_attempt', $data);
error_log("data in model AFTER INSERT: ");
問題は、データがモデルに到達することです (少なくとも私には思えます)。ログエントリは次のとおりです。
[23-Apr-2012 16:04:47] data in model BEFORE INSERT:{"user_id":"5","qid":"3","user_ans":"d","user_time":"3","exerciseid":"cr1","point_scored":"35"}
しかし、「挿入後」のログエントリはありません。挿入自体は発生せず、挿入後のログ エントリも発生しません。
私はDBからかなりうまく読むことができます。そのため、「config/database.php」でユーザーのユーザー権限をphpmyadminにチェックインしました。そのユーザーには、INSERTを含むすべての権限があります。
2つの質問:
- 何が問題ですか?私はどんな間違いをしていますか?
- insert ステートメントで何が起こっているのかを知るにはどうすればよいでしょうか? (ログには何も見つかりません。)
- xampp/apache/logs/error.log と xampp/php/logs/php_error_log を見ています。他のログを見る必要がありますか?