1

JQ $.post 関数を介してglobal_infoコントローラーにアクセスしようとすると、500 内部サーバー エラーが発生します。これは、この関数でのみ発生します。

CI コントローラー コード:

function gi_get_ad_payment_code()
        {
            $q = $this->db->get_where('code_payment', array('code' => $_POST['code']));
            if ($q->num_rows() == 0 ){
                show_error('Whoops, no results :(');
            } else
            {
                 $q = $q->row();
                 echo $time = substr($q->code, 12, 2);
            }

JQコード:

var forma = $('form#mali_oglas'),
pomoc = $('div[role=pomoc]'),
div = $('.mali_oglas_pomoc'),
input = forma.find('input, textarea'),
code = forma.find('#code'),
cct = $.cookie('csrf_token_name');

code.on('focusout', function(){
    var url = '<?php echo base_url() ?>global_info/gi_get_ad_payment_code',
    data = $(this).val();
    $.post(url, {code : data, 'csrf_token_name': cct}, function(){
        console.log(code);
        $('.mali_oglas_img_paid').slideDown('slow');
        code.after('<input type="hidden" name="time" value="'+ data +'" />');
        code.after('<input type="hidden" name="paid" value="1" />');
    });
});

他のいくつかのコントローラーを試してみると、これは正常に機能しています (また、 global_infoではないコントローラーを使用して他の場所で $.post を使用し、すべて正常に機能しています)。ここで何が問題になっているようですか?

4

1 に答える 1

0

私はかつてCIでもこれを持っていましたが、基本的にはコントローラーファイルのエンコーディング(UTF-8、ANSIなど)と関係がありました。問題を解決したコントローラーも再作成しました。

ところで、ビューで URL を作成するより適切な方法は次のとおりです。<?php echo base_url('global_info/gi_get_ad_payment_code'); ?>

于 2012-11-19T12:32:33.250 に答える