0

我正在尝试创建一个聊天框并在 Codeigniter 中执行此 AJAX 帖子,但由于某种原因,我收到服务器 500 内部服务器错误,并且在使用 firebug 时根本没有响应?任何人都可以帮忙吗?

这是我的 Javascript 代码

$(document).ready(function(){

    $("a#submit").click(function(){

        var chat_message_content = $("input#chat").val();

        if(chat_message_content == ""){

            return false;
        }

        $.post(base_url + "index.php/abovetheblues/add_chat_messages", {
            chat_message_content : chat_message_content, 
            user_id : user_id
        }, 
        function(data){

            alert(data);
        },"json");


        return false;
    });
    return false;

});

这是我的控制器

function add_chat_messages() {
        // Grab the $chat_message_content, $user_id
        $user_id = $this->input->post($this->session->userdata("user_id"));
        $chat_message_content = $this->input->post('chat_message_content');

        $this->abt_db->add_chat_message($user_id, $chat_message_content);
    }

这是我的模型

function add_chat_message($user_id, $chat_message_content) {

    $query_str = "INSERT INTO chat_message(user_id, chat_message_content) VALUES (?,?,?)";
    $this->db->query($query_str, array($user_id, $chat_message_content));
}

还有我的查看页面

<script type="text/javascript">

    var user_id = "<?php echo $this->session->userdata("user_id"); ?>";



</script>

<!--loads the header-->
<?php $this->load->view('abt-header'); ?>
<!--this is the login page-->

<div data-role="page" id="Abt-chat" data-add-back-btn="true">
    <div data-role="header" data-position="fixed">
        <h1>Peer Chat</h1>

    </div>
    <div data-role="content">

        <div data-role="fieldcontain">
            <div id="chat_viewport"></div>

            <p>
                <label>Input Chat: </label>
                <input name="chat" id="chat" type="text" value=""/>

            </p>

            <p>
                <?php echo anchor('#', 'Send Chat', array('title' => 'Send Chat', 'id' => 'submit')); ?>
            </p>  

        </div> 
        <?php echo form_close(); ?>

    </div>

</div>
4

1 回答 1

0

您将用户 ID 作为 user_id 传递。但是在函数中检索它时,你做错了。像下面这样改变它。

$user_id = $this->input->post('user_id');

而且 -> 需要在 query() 之前出现

$this->db->query($query_str, array($user_id, $chat_message_content));
于 2013-08-13T16:06:52.683 回答