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

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if ($_REQUEST['name']){
    	$nameProduct = $_REQUEST['name'];
    	$products = $db->products($_REQUEST['name']);
    } else {
    	$products = 'error';	
    }
    
    if ($products == 'error'){
    	$http->redirect('index.php');
    }

    Из частного проекта.
    Во-первых почему-бы не использовать $nameProduct второй раз вместо $_REQUEST['name']?
    Во-вторых вместо $products = 'error'; можно сразу было сделать редирект, т.к. все последующие использования $products не имеют смысла, если редирект выполнен.

    Запостил: mikhailu, 06 Сентября 2010

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

    • $db->products

      и это тоже доставляет
      Ответить
    • метод products это круто
      Ответить
    • >> Во-вторых вместо $products = 'error'; можно сразу было сделать редирект, т.к. все последующие использования $products не имеют смысла, если редирект выполнен.
      а если скрипт заканчивает работу не сразу после редиректа?
      Ответить
      • Это каким же образом? После редиректа вы уже находитесь на другой странице, на которой - другой скрипт. Фейл редиректа невозможен в принципе - внутри зашит примитивный оператор header('Location:');
        Ответить
        • После редиректа браузеру посылается заголовок Location. Скрипт продолжает работать, пока не кончится.

          Браузер может перейти на новый локейшен, а может и не перейти (если бажный) или перейти но не сразу.
          Ответить

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