就是这样一个貌似是column不存在的错误,经过反复检查好像并没有字段缺失一系列的问题,想请教一下问题的出处,感谢
省略部分代码,关联部分如下
if (isset($search_condition->done_status) && $search_condition->done_status >= 0) {
if (empty($s_where)) {
$s_where = ' where';
} else {
$s_where .= ' AND';
}
$s_where .= ' APP.done_status_c = ' . $search_condition->done_status;
}
static function get_list($search_condition)
{
if (!empty($search_condition->more_than_80_percent_digestion)) {
$sql_additional_cond = '';
$sql_cond = self::get_condition_sql($search_condition);
$sql = "SELECT APP.id_c as id, APP.name_c as name, APP.name_romaji_c as name_romaji, APP.app_date as date,
APP.start_date_c as start_date, APP.end_date_c as end_date,
APP.app_client_id as client_id, APP.app_schedule_ready as schedule_ready,
APP.app_approval_data as approval_data, APP.app_approved as approved,
APP.app_material_ready as material_ready, APP.app_tutor_ready as tutor_ready,
APP.form_c as form, APP.app_type as type, APP.lesson_language_c as lesson_language,
APP.app_lesson_category as lesson_category, APP.app_number_of_people as number_of_people,
APP.app_lesson_unit_price as lesson_unit_price, APP.app_bill_type as bill_type,
APP.approved_c, APP.creator_id_c, APP.draft_c, APP.parent_id_c, APP.app_cat_id_c as app_cat_id, APP.estimated_time_c as estimated_time,
C.name_c as client_name, U.name_c as staff_name
FROM (SELECT APP_sub.id_c, APP_sub.name_c, APP_sub.name_romaji_c,
APP_sub.date_c app_date, APP_sub.start_date_c, APP_sub.end_date_c,
APP_sub.client_id_c app_client_id, APP_sub.schedule_ready_c app_schedule_ready,
APP_sub.approval_data_c as app_approval_data, APP_sub.approved_c as app_approved,
APP_sub.material_ready_c as app_material_ready, APP_sub.tutor_ready_c as app_tutor_ready,
APP_sub.form_c, APP_sub.type_c as app_type, APP_sub.lesson_language_c,
APP_sub.lesson_category_c as app_lesson_category, APP_sub.number_of_people_c as app_number_of_people,
APP_sub.lesson_unit_price_c as app_lesson_unit_price, APP_sub.bill_type_c as app_bill_type,
APP_sub.approved_c, APP_sub.creator_id_c, APP_sub.draft_c, APP_sub.parent_id_c, APP_sub.client_id_c, APP_sub.staff_id_c,
APP_sub.estimated_time_c, APP_sub.app_cat_id_c, SUM(actual_minutes_c)/60 as minutes, SUM(actual_minutes_c)/60/APP_sub.estimated_time_c*100 as digest_rate,
APP_sub.lastupdate_datetime_c, APP_sub.open_status_c FROM application_t APP_sub
LEFT JOIN lesson_t L ON APP_sub.id_c = L.app_id_c WHERE estimated_time_c > 0 AND APP_sub.end_date_c IS NULL
group by app_id_c) APP LEFT JOIN client_t C on C.id_c = APP.client_id_c
LEFT JOIN user_t U on U.id_c = APP.staff_id_c
LEFT JOIN user_group_t G on G.id_c = C.group_id_c" . $sql_cond;
} else {
$sql_cond = self::get_condition_sql($search_condition);
$sql = "SELECT APP.id_c as id, APP.name_c as name, APP.name_romaji_c as name_romaji, APP.date_c as date, APP.start_date_c as start_date, APP.end_date_c as end_date,
APP.client_id_c as client_id, APP.schedule_ready_c as schedule_ready, APP.approval_data_c as approval_data, APP.approved_c as approved,
APP.material_ready_c as material_ready, APP.tutor_ready_c as tutor_ready, APP.form_c as form, APP.type_c as type, APP.lesson_language_c as lesson_language,
APP.lesson_category_c as lesson_category, APP.number_of_people_c as number_of_people, APP.lesson_unit_price_c as lesson_unit_price, APP.bill_type_c as bill_type,
APP.approved_c, APP.creator_id_c, APP.draft_c, APP.parent_id_c, APP.app_cat_id_c as app_cat_id, APP.estimated_time_c as estimated_time,
C.name_c as client_name, U.name_c as staff_name
FROM " . self::$table_name . ' APP LEFT JOIN client_t C on C.id_c = APP.client_id_c
LEFT JOIN user_t U on U.id_c = APP.staff_id_c
LEFT JOIN user_group_t G on G.id_c = C.group_id_c' . $sql_cond;
}
$list = array();
database::Connect($pdo);
$del = $pdo->prepare($sql);
$del->execute();
从html呼出app::get_list()时出现此错误,目的时取出APP表内的done_status_c=0(或是1)时的数据,
问题大概率出现在if文的(!empty($search_condition->more_than_80_percent_digestion))下面并没有进入到else
请教一下需要改正的地方或可能出现错误的位置。
感谢 !