尝试使用codeigniter

时间:2015-05-27 19:45:41

标签: php mysql database codeigniter

我想要做的是将不同的文章评论写入数据库,并为他们提供不同的文章ID,以便我以后可以抓住它们以显示每篇文章的不同评论。一切都正确地插入数据库,除了作为字符串插入的文章ID" dist"即使它必须是INT。我的页面中甚至没有包含dist的单词。我得到了#dist;' dist' dist当我将我的数据库文章ID值从INT更改为varchar时,INT数据库值保持不变0。 这是我的代码。 在这里,我添加" articleOn"到这个会话userdata。

$userrecipe=array("articleOn"=>$artID); //articlebeard
$this->session->set_userdata($userrecipe);//setting session

这里它仍然具有正常的INT值,例如一个数字" 4"。 稍后当我尝试使用此代码将其添加到数据库时:

public function addComment()
{
    $data=array('artID' => $this->session->userdata('articleOn'));
    $this->db->insert('comment', $data);
}

如果在数据库中的INT或者' dist'它总是加零。如果它的varchar。 我该怎么做才能将它保持为INT并正确写入数据库。

为artID指定值:

$query=$this->db->get("article");      
foreach($query->result() as $rows)
        {
  $articledata=array(
  $rows->artID                             //articleABC
   );
   ?>
 <?php if($this->session->userdata("email")!=""):?>
           <a href="<?php echo site_url('site/article/'.$articledata[0]); ?    >">


public function article($artID){ //site/article
$data['artID']=$artID;
$this->load->view("articlebeard", $data);
}

调用模型方法。

    public function addComment(){
    $this->load->library('form_validation');
        $this->form_validation->set_rules('comment', 'Comment', 'trim|required');
        if($this->form_validation->run() == FALSE)
        {
            header('location:articlebeard');

        }
        else
        {
    $this->load->model("model_users");
    $this->model_users->addComment();
     header('Location: ' . $_SERVER['HTTP_REFERER']);           
    }
}

1 个答案:

答案 0 :(得分:0)

我从你的帖子中可以理解的是解决方案:

更新您的代码,如下所示:

   public function addComment(){
          $this->load->library('form_validation');
          $this->form_validation->set_rules('comment', 'Comment', 'trim|required');
          if($this->form_validation->run() == FALSE)
          {
                 header('location:articlebeard');

          }
          else
          {
                 $this->load->model("model_users");
                 //here you have to define the article id variable
                 $artID = 1;//You can replace with your dynamic field 
                 $this->model_users->addComment($artID);
                 header('Location: ' . $_SERVER['HTTP_REFERER']);           
          }

}

然后模型方法应该是这样的

public function addComment($artID)
{
    $data=array('artID' => $artID);
    $this->db->insert('comment', $data);
}

希望这会有所帮助,因为我无法运行此代码,但希望这会有效,如果您收到错误请告诉我,我会告诉您