foreach($sale_row as $key=>$value){
        $sales_id[]=$sale_row[$key]['sales_id'];
     }              // print_r($sales_id);exit;
     //没有还在进行的活动
     if(empty($sale_row)){
      echo message_and_redirect('alert', '目前没有优惠活动!', -1);
      exit;
     }
     print_r($sales_id);exit;想问下  第一条红色字能打印出来
     但第二条红色字却打印不出来,页面是空白的,不知道中间这句if哪里有错,
    后台把活动全部都过时时,页面确实会alert提示  目前没有优惠活动  并返回。没有错误啊。
    有点搞不懂?  
    新人发帖,请帮助

解决方案 »

  1.   

    在if之前先打印
    print_r($sale_row);
      

  2.   

    可以打印出$sale_row的   但在if后面,也打印不出这个$sale_row
      

  3.   

           // print_r($sales_id);exit;
          //没有还在进行的活动 
         if(empty($sale_row)){
           echo message_and_redirect('alert', '目前没有优惠活动!', -1);
           exit;
          }
          print_r($sales_id);exit;你的IF里面有个exit;啊,如果执行这个后面当然不有打印了
      

  4.   


    empty($sale_row)这个条件在不符合的情况下
    删了exit,也还是打印不出来
      

  5.   


    哦。
    只是我把这段if语句删除,整个就正确了,但现在需要这样一个判断。
    //最新特价活动
    $sales_id=array();
    $select = $db->select();
    $select->from(TB_SALES,'sales_id');
    //活动已结束的不显示
    $select->where('over_time >= '.$time);   
    $sale_row = $db->fetchAll($select);
    //print_r($sale_row);exit;   
         //没有还在进行的活动
         print_r($sale_row);
         if(!empty($sale_row)){
          return true;    
         }else{
          echo message_and_redirect('alert', '目前没有优惠活动!', -1);
          exit;
         }
         foreach($sale_row as $key=>$value){
            $sales_id[]=$sale_row[$key]['sales_id'];
         }  
         print_r($sales_id);exit;这段是修改后的,整个小片段吧
      

  6.   

    已经解决了
    把上面修改后的代码,注释掉return true;就OK了