"PHP" / Говнокод #3046 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
$taskName=$_GET[""];
$taskId=$_GET[""];
$objId=$_GET[""];
$catId=$_GET[""];

$this->DoInsertQuery("crm_task","TaskID,RefObjId,ObjectID",array("TaskID"=>$taskId,"RefObjId"=>$catId,"ObjectID"=>$objId));

а вам слабо?

Запостил: nur nur, (Updated )

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

  • Видимо, разработчик просто забыл прописать индексы в $_GET. Наверное это было под конец рабочего дня. :))
    Ответить
  • ГК тут в избыточности входных данных. Функция принимает имя таблицы (crm_task), имена полей (TaskID,RefObjId,ObjectID) и значения (массив).
    Второй параметр не нужен, т.к. имена полей можно брать из ключей массива.
    $this->DoInsertQuery(
      "crm_task",
      array("TaskID"=>$taskId,"RefObjId"=>$catId,"ObjectID"=>$objId)
    );


    ЗЫ. Надеюсь автор просто не дописал ключи в массиве GET.

    Ну и еще ГК возможен, если в самой функции нет никаких средств фильтрации входных параметров. Иначе sql-инъекция не за горами.
    Ответить

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

Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:

    А не использовать ли нам bbcode?


    8