1. PHP / Говнокод #1116

    +144.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $query = "SELECT `parent_id` FROM `items` WHERE `id`='".$_GET['id']."'";
    $result = mysql_query($query);
    $result = mysql_fetch_assoc($result);
    $parent_id = $result[0]['parent_id']
    
    $query = "SELECT `id` FROM `catalog` WHERE `id`='".$parent_id."'";
    $result = mysql_query($query);
    $result = mysql_fetch_assoc($result);
    $catalog_id = $result[0]['id']

    Кто-нибудь мне объяснит нахрена здесь второй цикл?

    Запостил: guest, 31 Мая 2009

    Комментарии (14) RSS

    • а где здесь цикл?
      Ответить
    • Первый то найти не могу...
      Ответить
    • klem4:
      Видимо автор читает через строчку, или скорее не дочитывает до конца строки, и ему показалось что тут 2 одинаовых блока по выборке.
      Ответить
      • >одинаовых блока по выборке.

        Знаешь пословицу?
        Не бывает двух одинаковых свиней: где-то жира чуть больше, где-то чуть меньше.
        Ответить
    • Toyo:
      Единственное, это можно было написать одним запросом.
      Ответить
    • Знатог:
      Господа, а вам не приходило в голову, что parent_id и id - это одно и то же?
      Ответить
    • Это особый ORM внутри головы генерирует запросы.
      Ответить
    • to #5
      тут два id: items.id и catalog.id.
      какое из них ты имеешь в виду?
      Ответить
    • #4
      Согласен, код просто писал человек, который с SQL почти незнаком. Поэтому особого говнокодинга я лично не заметил. IMHO, напрашивается JOIN:
      SELECT catalog.id
      FROM catalog
      JOIN items
      ON items.parent_id = catalog.id
      WHERE items.id = my_id
      Ответить
    • Иван:
      #8
      Второй запрос не нужен. Посмотрите на WHERE и какое значение хотят получить. Т.е., получаемое catalog.id равно переменной $parent_id (если, конечно, id уникальное)
      Ответить
    • аффтар ^_^:
      Сори, опечатался. Запрос, а не цикл ))

      Всё правильно, проблема в том что последнй запрос возвращает то что итак сидит в $parent_id.
      Ответить
    • Иван:
      Понял. Возможно, вторым запросом проверяется существование записи в таблице catalog (можно заменить на COUNT)
      Ответить
    • Радует также то, что переменная $_GET['id'] подставляется в запрос внаглую. Желаю автору говнокода выключенных magic_quotes_gpc.
      Ответить
    • https://i.postimg.cc/4Nsznztx/image.png
      Ответить

    Добавить комментарий