Codeigniter - 在布尔值中调用成员函数result()

时间:2016-08-10 15:24:56

标签: php mysql codeigniter isset

我正在尝试运行此PHP脚本以从Web服务获取一些数据,它可以完美地运行50~120次,但之后会抛出此异常。 这是我的控制者:

 /* $dataArray = Array(
  *                 "Column1" => "value1",
  *                 "Column2" => "value2",
  *                 and so on...);
  */
    foreach ($dataArray as $row => $value)
    {
// $value[$PrimaryKey]  >>> where condition
// $PrimaryKey          >>> name of the column
// $Table               >>> table name
        if($this->m_myModel->verifyRow($value[$PrimaryKey], $PrimaryKey, $Table))
        {
            $newArray[] = $value;
            unset($dataArray[$row]);
        }// if
    }// foreach

我的模特:

function verifyRow($where, $select, $table)
{

    //$this->db->query("SELECT $select FROM $table WHERE $select = $where LIMIT 1");
    $this->db->select($select)
        ->from($table)
        ->where($select, $where)
        ->limit(1);

    $query = $this->db->get();

    if(isset($query->result()[0])) // This is where the error occurs
        return true;
    else
        return false;
}// function verifyRow

我忘记了我将配置文件中的$ db ['default'] ['db_debug']更改为FALSE,因此我没有收到任何数据库错误,然后我打印了$ this-> db-> _error_message( );得到了这个:MySQL服务器已经消失了

5 个答案:

答案 0 :(得分:1)

我想如果有任何结果你想要得到吗?

这也是一个不错的选择:

if($query->num_rows() > 0) 
        return true;
    else
        return false;

答案 1 :(得分:0)

试试这个

$query = $this->db->get();
$result = $query->result(); # added

if(!empty($result))
    return true;
else
{
    return false;
}

$result可以如下显示

foreach ($result as $value) {
    echo $value['field_name'];
}

$name = $result[0]['field_name'];
echo $name;

答案 2 :(得分:0)

public function affiche()
     {
       // return $this->db->select('*')->from('produit')->get()->result();
         //   $sql = "SELECT * FROM produit";
        //$result= $this->db->query($sql)->get();
         /*if(!empty($result)){
            return true;   
         }else{
             return false;
         }*/
        $results = array();
        $this->db->select('*');
        $this->db->from('produit');
        $query= $this->db->get();
          if($query == 1) {
               $results = $query->result();
               return  $results;
            }
            else{
                 return false;
            }
     }

答案 3 :(得分:0)

可以使用以下设置:

public function index()
{
    $result = $this->M_ajout->affiche();
    $data_vue['donne'] = $result;
    $data['vuecharge'] = 'V_produit';
    $data['data_vue'] = $data_vue;
    $this->load->view('template',$data);
}

答案 4 :(得分:0)

<?php 
                    foreach ($donne as $row){ 
                    ?>

                         <div class="col-sm-3">
                    <center><?=$row->code_type_produit; ?></center><br> 
                        <div class="product-image-wrapper">
                            <div class="single-products">
                                <div class="productinfo text-center">               
                             <a href="<?php /*echo site_url("C_produit/modif?id=$row->")*/ ?>">
                                <img class="imgbox"  src="<?php echo base_url() ?>images/<?php echo $row->img_produit;?>"
                                      width="300px" height="300px" ></a>
                                        <h3><?=$row->code_produit ;?></h3>
                                        <h2><?=$row->prix_produit; echo " CFA";  ?></h2>
                                        <a href="<?php  echo site_url('C_login/authen')?>" class="btn btn-default add-to-cart">
                                                <i class="fa fa-shopping-cart"></i>Voir</a>
                                     <!-- <button class="btn btn-default my-cart-btn" 
                                     data-id="<?=$row->idp ;?>" 
                                     data-name="<?=$row->code_produit ;?>" 
                                     data-price="<?=$row->prix_produit ;?>" 
                                     data-quantity="1"
                                     data-image="<?php echo base_url() ?>images/<?php 
                                     echo $row->img_produit;?>">
                                             Ajouter 
                                    </button> -->
                                    </div>
                                <div class="product-overlay">
                                        <div class="overlay-content">           
                                <img src="<?php echo base_url() ?>images/<?php echo $row->img_produit;?>"
                                          width="150px" height="300px"></a>
                                            <h2><?=$row->Commentaire ;?></h2>
                                            <h2><?=$row->prix_produit; echo " CFA";  ?></h2>
                                            <p><?=$row->code_produit ;?></p>

                                            <a href="<?php  echo site_url('C_login/authen')?>" class="btn btn-default add-to-cart">
                                                <i class="fa fa-shopping-cart"></i>Voir</a>
                                        </div>
                                    </div>
                            </div>

                        </div>

                    </div>
                     <?php } ?>