【问题标题】:How to send the my sql result to controller in codeigniter as a variable如何将 my sql 结果作为变量发送到 codeigniter 中的控制器
【发布时间】:2010-06-01 09:45:37
【问题描述】:

在我的模式下,我选择了一个字段

$query1 = $this->db->query("SELECT dPassword 
                    FROM tbl_login
                    WHERE  dEmailID='a@a.in'");

如何将dpassword 作为变量返回给我的控制器 我试过这种方式return dpassword;

【问题讨论】:

    标签: php mysql codeigniter


    【解决方案1】:

    查看 CI 手册的查询结果部分。 $query1 设置为您执行的查询中的 mysql 资源。然后你需要调用额外的函数来获取数据

    http://codeigniter.com/user_guide/database/results.html

    $dataArray=$query1->result_array();
    return $dataArray["dPassword"];
    

    【讨论】:

      【解决方案2】:

      以下也可以:

      if($query1->num_rows() > 0){
          $row = $query1->row();
      }
      return $row->dPassword;
      

      如果您的查询要返回多于一行,您可以对结果进行如下操作:

      foreach($query1->result() as $row){
      echo $row->field1;
      echo $row->field2;
      echo $row->etcetera;
      }
      

      对于单行结果,我通常直接从模型中返回该行,如下所示:

      return $query1->row();
      

      这是一个例子:

      function select_provider_details($provider_id)
          {
              $this->db->select('*');
              $this->db->from('providers');
              $this->db->where('provider_id', $provider_id);
      
          $query = $this->db->get();
      
          if($query->num_rows() > 0)
          {
              $result['success'] = TRUE;
              $result['query'] = $query->row();
          }
          else
          {
              $result['success'] = FALSE;
              $result['error'] = "Provider not found in database";
              $result['errorcode'] = "E003";
              $result['query'] = $query->row();
          }
              return $result;
      }
      

      或者对于预期返回多个结果的查询,我返回整个结果对象:

      return $query1;
      

      【讨论】:

        【解决方案3】:

        也许你可以用这个托盘。

        $query1 = $this->db->query("SELECT dPassword  
                            FROM tbl_login 
                            WHERE  dEmailID='a@a.in'"); 
        
        if($query1){
           // if you are working with objects
           return $query1->result();
           // if you are working with arrays try
           return $query1->result_array();
        }else{
           return false;
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-08
          • 1970-01-01
          • 2013-08-06
          • 2014-03-17
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多