【问题标题】:If condition not working in model of codeigniter如果条件在 codeigniter 模型中不起作用
【发布时间】:2015-03-17 12:11:27
【问题描述】:

我正在尝试为我的网站实现一个“喜欢”按钮。我正在使用 Codigniter、Ajax 和 Jquery。单击类似按钮时,应将数据输入数据库,如果按下不同按钮,则应从数据库中删除数据。但是我在模型中遇到了一个问题,当我点击喜欢按钮时,数据没有添加到数据库中。请帮助我找到解决方案。

这是我的 Jquery 文件“likeitem.js”

function likeItem(postId)
{
    if ($("#likeItem_"+postId).text() == "Like") 
    {
        $("#likeItem_"+postId).html('Unlike');
        var purpose = "Like";
    }
    else 
    {
        $("#likeItem_"+postId).html('Like');
        var purpose = "UnLike";
    }
    $.ajax({
                type    : "POST",
                url     : "http://localhost/codeig_smarty/index.php/user/likeItem",
                data    : "postId=" + postId + "purpose=" + purpose,
                success : function() 
                {
                   
                }
            });
    return false;
}

这是我的模型“usermodel.php”

    public function itemLike()
    {
        $id         = $this->session->userdata('userID');
        $postId     = $this->input->post('postId');
        $purpose    = $this->input->post('purpose');
        
        if($purpose=="Like")
        {
//            echo 'test';
//            exit();
        $data   = array(
                        "userID"        => $id,
                        "postTextID"    => $postId,
                        );
        $this->db->insert('like', $data);    
        }
        else
        {
            echo 'hai';
        }
    }

这是我的视图文件“home.tpl”

 <li><a class="like-unlike" href="#" id="likeItem_{$item['postID']}" onclick="likeItem({$item['postID']})">Like</a></li>

这是我的控制器“user.php”

 public function likeItem()
    {
        $this->usermodel->itemLike();
    }
    

【问题讨论】:

    标签: javascript php jquery ajax codeigniter


    【解决方案1】:

    你在这里搞错了。你忘了放& 符号。试试这个代码。

    data    : "postId=" + postId + "&purpose=" + purpose,
    

    完整代码: 如果要操作从 ajax 返回的结果,可以在成功块上执行以下代码:

       $.ajax({
                type    : "POST",
                url     : "http://localhost/codeig_smarty/index.php/user/likeItem",
                data    : "postId=" + postId + "&purpose=" + purpose,
                success : function(data) 
                {
                   // do seomthing here with data
                   // console.log(data) --> to see data return or not
                }
            }); 
    

    【讨论】:

    • @codebugger 很高兴它成功了。接受我的回答,以后有同样问题的人可以参考。
    猜你喜欢
    • 2016-05-01
    • 1970-01-01
    • 2020-10-05
    • 2018-10-12
    • 1970-01-01
    • 2012-07-11
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    相关资源
    最近更新 更多