select p.id,p.photo_org,p.photo_middle,p.photo_small,p.photo_mini_150,p.middle_w_h,p.small_w_h ,p.middle_size,album.user_id from yst_direct_album as a left join yst_photos as p on a.photo_id=p.id inner join yst_photo_album as album on a.album_id = album.id where p.is_del=0 and a.did=88 and a.sid= group by p.file_name order by a.photo_id desc limit 0,30
执行错误: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'group by p.file_name order by a.photo_id desc limit 0,30' at line 1

57.      {
58.          $this->arrSql[] = $sql;
59.          if( $result mysql_query($sql$this->conn) ){
60.              return $result;
61.          }else{
62.              spError("{$sql}<br />执行错误: " mysql_error());
63.          }
64.      }
65.      
66.      /**
67.       返回影响行数
21.       
22.       * @param sql  执行的SQL语句
23.       */
24.      public function getArray($sql)
25.      {
26.          if( ! $result $this->exec($sql) )return array();
27.          if( ! mysql_num_rows($result) )return array();
28.          $rows = array();
29.          while($rows[] = mysql_fetch_array($result,MYSQL_ASSOC)){}
30.          mysql_free_result($result);
31.          array_pop($rows);
202.       *
203.       * @param sql 字符串,需要进行查找的SQL语句
204.       */
205.      public function findSql($sql)
206.      {
207.          return $this->_db->getArray($sql);
208.      }
209. 
210.      /**
211.       执行SQL语句,相等于执行新增,修改,删除等操作。
212.       *
294.          }
295.          
296.          $watermark_base64 $this->urlsafe_b64encode(str_replace('http://tomoyunshequ.oss-cn-shanghai.aliyuncs.com/'''$watermark_path.'?x-oss-process=image/resize,P_20'));
297.          
298.          $total_num spDB('yst_direct_album')->findSql($sql_total);
299.          $list spDB('yst_direct_album')->findSql($sql);
300.          foreach($list as $k=>$v){
301.              $list[$k]['middle_size'] = $this->formatFileSize($v['middle_size']);
302.              $list[$k]['like_num'] = $this->getPicLikeNum($v['id']);
303.              $list[$k]['like_status'] = $this->likeStatus($uid,$v['id']);
304.              //是否开启水印
83.          //获取第一页数据
84.          if($keyword != ''){
85.              $keyword_str ' and p.keywords like "%'.$keyword.'%"';
86.          }
87.          if($image == ''){
88.              $pic $this->getPicData($sid$did $tag_id$status ,$keyword_str);
89.          }else{
90.              $pic $this->faceImg($sid$did$image);
91.          }
92.          
93.          //分享时的验证数据
16.      if(!is_object($handle_controller) || !method_exists($handle_controller$__action)){
17.          eval($GLOBALS['G_SP']["dispatcher_error"]);
18.          exit;
19.      }
20.      // 路由并执行用户代码
21.      $handle_controller->$__action();
22.      // 控制器程序运行完毕,进行模板的自动输出
23.      if(FALSE != $GLOBALS['G_SP']['view']['auto_display']){
24.          $__tplname $__controller.$GLOBALS['G_SP']['view']['auto_display_sep'].
25.                  $__action.$GLOBALS['G_SP']['view']['auto_display_suffix']; // 拼装模板路径
26.          $handle_controller->auto_display($__tplname);
18.  require APP_PATH '/controller/controller.php';
19.  require APP_PATH '/controller/charge.php';
20.  //检测站点是否已经过期
21.  $login = new charge();
22. 
23.  spRun();