@tolikryg

Что не так с этим кодом, пытаюсь вывести Заголовок, есть кто поможет?

Есть такой блок, кейс содержит в себе название комментария который берет из базы, сколько не пытался сделать не выдает, может кто нибудь знает как сделать, или покажет на ошибку. Только если можно сделайте полный вариант, чтобы я понял его.

case 'categories':
            if (isset($_GET['id']) && !empty($_GET['id'])) {
                if (getKData($_GET['id'], 'id') == true) {
                    $username_k_titled = getKData($_GET['id'], 'name');
                    $set = $username_k_titled['name'];
                } else {
                    $set = $lang['page_user_not_found'];
                }
            } else {
                $set = $lang['page_categories'];
            }
        break;

А ниже функция которая обрабатывает:

function getKData($coomm_id=0, $query_select='*') 
{
    global $Tumdconnect;

    if (is_numeric($coomm_id)) {
        $coomm_id_type = "id = " . $coomm_id;
    } elseif (preg_match('/[A-Za-z0-9_]/', $coomm_id)) {
        $coomm_id_type = "name = '{$coomm_id}'";
    } else {
        return false;
    }

    $coomm_id = secureEncode($coomm_id);
    $user_data = "SELECT $query_select FROM ".CATEGORIES." WHERE " . $coomm_id_type;
    $user_data_query = $Tumdconnect->query($user_data);

    if ($user_data_query->num_rows == 1) {
        if ($user = $user_data_query->fetch_array()) {
            return $user;
        }
    }
}
  • Вопрос задан
  • 116 просмотров
Решения вопроса 1
@tolikryg Автор вопроса
Все спустя чуть более 4 месяцев я смог доделать если что спрашивайте подскажу как сделал!
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
TheLazzziest
@TheLazzziest
🐱
Во первых, формализуйте логику запроса:
function getKData(array $fields = ['*'], array $cond = []) {
       global $Tumdconnect;
       $sql = "SELECT " . implode(", ", $fields) . " FROM " . CATEGORIES;
       if(!empty($cond)) {
            $field = key($cond);
            $value = $cond[$field];
            $sql .=  " WHERE {$field}={$value}";
       }
        $user_data_query = $Tumdconnect->query($user_data);

        if ($user_data_query->num_rows == 1) {
            if ($user = $user_data_query->fetch_array()) {
                return $user;
            }
         }
         return [];
}

И дальше, во время поиска загаловка, просто делайте обычный запрос с выбором всех нужных вам полей:
case 'categories':
            if (isset($_GET['id']) && !empty($_GET['id'])) {
                $data = getKData(['name'], ['id' => (int)$_GET['id']]);
                if (!empty($data)) {
                    $set = $data['name'];
                } else {
                    $set = $lang['page_user_not_found'];
                }
            } else {
                $set = $lang['page_categories'];
            }
        break;
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы