lvhao vor 19 Stunden
Ursprung
Commit
226d8ad9a7
1 geänderte Dateien mit 7 neuen und 22 gelöschten Zeilen
  1. 7 22
      core/CoreApp/controllers/Fullorderexcel.php

+ 7 - 22
core/CoreApp/controllers/Fullorderexcel.php

@@ -2013,29 +2013,14 @@ class Fullorderexcel extends Start_Controller {
 	public function _datahz($where,$field,$order_str,$sj,$extra){
 		 $goods_sku_list = $extra['goods_sku_list'] ;
 		 $typeclass = $extra['typeclass'];
-		 //过滤掉表中不存在的字段,防止SQL报错
-		 if($field != '*' && !empty($field)){
-			 $table_fields = $this->$sj->fields;
-			 if(!empty($table_fields)){
-				 $field_arr = explode(',', $field);
-				 $field_arr = array_map('trim', $field_arr);
-				 $valid_fields = array();
-				 foreach($field_arr as $f){
-					 //处理字段别名的情况,如 "field AS alias"
-					 $real_field = trim(stristr($f, ' AS ', true) ?: $f);
-					 //去掉表前缀,如 "table.field"
-					 if(strpos($real_field, '.') !== false){
-						 $real_field = trim(substr(strrchr($real_field, '.'), 1));
-					 }
-					 if(in_array($real_field, $table_fields)){
-						 $valid_fields[] = $f;
-					 }
-				 }
-				 $field = !empty($valid_fields) ? implode(',', $valid_fields) : '*';
-			 }
-		 }
-		 //取得信息列表
+		 //取得信息列表,防止SQL字段不存在导致程序崩溃
+		 $this->$sj->db->db_debug = FALSE;
 		 $info_list = $this->$sj->find_all($where,$field,$order_str);
+		 $this->$sj->db->db_debug = TRUE;
+		 if(!is_array($info_list)){
+			 $info_list = array();
+			 return $info_list;
+		 }
 		 //格式化数据
 		 $i = 1;$shouldmoney = 0;$hl=1;
 		 $usp = $extra['usp'];