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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
public function addHeadJS($src){
    $js_tag = '<script language="JavaScript" type="text/javascript" src="/'.$src.'"></script>';
	if($this->is_ajax) { echo $js_tag; return true; }
	$this->addHead($js_tag);
    return true;
}

Добавляет тег <script> с указанным путем
@param string $src - Первый слеш не требуется
@return true

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

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

  • А что не так то? Я делаю фактически тоже самое, что бы при подключении определенных модулей подключались их стили и скрипты.
    Ответить
    • Нормальные люди:
      // в представлении, разумеется
      assets :takoytojs


      Пыхопетушары:
      // насрано посреди index.pohape
      public function qoodQoodax($src){
          $qoqo_tag = '<script language="JavaScript" type="text/javascript" src="/'.$src.'"></script>'; // ЗАЧЕМ МНЕ ФИЛЬТРОВАТЬ XSS? У МИНЯ НЕТ ВРЕМЕНИ ЕБАТЦА С ЭТИМ! 
      	if($this->is_kurarikoo) { echo $qoqo_tag; return true; }
      	$this->addHead($qoqo_tag);
          return true;
      }
      Ответить
      • А
        assets :takoytojs
        в каком виде и под поддержкой чего будет работать?
        Ответить
  • По моему скромному мнению, вцелом лишнее только return true;
    Ебацца с XSS надо еще до входа данных в ф-цию, у нас ведь не $_GET['scr'] в ф-ции используется, а $src, следовательно все должно быть обрезано раньше. Ну и слеш конечно тоже лишний, не упомнишь: подставляет ли ф-ция начальный слеш или нет.
    Ответить
    • По мне не хватает проверки на наличие файла. И при его отсутствии неплохо бы возвращать false ну или исключение поднимать.
      Ответить
    • Насчет XSS и слеша - согласен . А вот заэкранировать не помешает.
      Ответить
    • Ну слэш добавляет совершенно напрасно.
      Мало того что добавить скрипт по относительному пути уже не получится, так ещё в коде будет выглядеть именно как добавление по относительному пути, а не по абсолютному, так как слэш добавляется всегда.
      Ответить
      • Имхо, вместо / эта функция должна приклеивать какой-нибудь "$baseDir/"... тогда относительные пути в ее вызове будут смотреться логично. А абсолютные пути, имхо, не стоит передавать лишний раз, потом сайт хрен передвинешь в другую папку.
        Ответить
  • это не говно, это в говне плавает. т.е. сама логика сомнительна
    Ответить

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

Семь раз отмерь — один отрежь, guest!

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


    8