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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
<form id="form1" name="form1" method="post" action="2.php">
...
</form>
<?php session_start ();
?>
  <?php 

$_SESSION['dataa'] = $_POST['dataa'];
$_SESSION['datab'] = $_POST['datab'];
$_SESSION['datac'] = $_POST['datac'];
$_SESSION['datad'] = $_POST['datad'];
$_SESSION['datae'] = $_POST['datae'];
$_SESSION['dataf'] = $_POST['dataf'];
$_SESSION['datag'] = $_POST['datag'];
$_SESSION['datah'] = $_POST['datah'];
$_SESSION['datak'] = $_POST['datak'];
$_SESSION['datal'] = $_POST['datal'];
if ($_SESSION['dataa'] == "1") { include 'data/data1.php';};
if ($_SESSION['datab'] == "1") { include 'data/data2.php';};
if ($_SESSION['datac'] == "1") { include 'data/data3.php';};
if ($_SESSION['datad'] == "1") { include 'data/data4.php';};
if ($_SESSION['datae'] == "1") { include 'data/data5.php';};
if ($_SESSION['dataf'] == "1") { include 'data/data6.php';};
if ($_SESSION['datag'] == "1") { include 'data/data7.php';};
if ($_SESSION['datah'] == "1") { include 'data/data8.php';};
if ($_SESSION['datak'] == "1") { include 'data/data9.php';};
if ($_SESSION['datal'] == "1") { include 'data/data10.php';};


print_r ($_SESSION);
?>

<?php //if ($_SESSION['dataa'] == "1") { include 'data/data1.php';};?>




<p> </p>
<p> </p>

http://www.php.ru/forum/viewtopic.php?p=258218

Полный и безнадежный долбоебизм

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

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

  • главный долбоебизм в том, что в пхп до сих пор вручную сессиями управляют
    в 21м веке
    Ответить
    • и ничего страшного на си вон до сих пор память в ручную выделяют и освобождают.
      Ответить
      • Си столько лет, что ему не стыдно. Он используется в жёстких условиях, где другие языки не выживают, поэтому там это нормально.
        Если бы в Си добавили эту возможность, то и он бы там не выжил.
        Пришлось бы на ассемблере писать...
        Ответить
      • Вы путаете божий дар с яичницой.
        Ручное выделение памяти -- фишка си, с помощью которой можно решать сложные задачи. Иногда память НАДО выделять вручную. Представьте себе модуль ядра (драйвер например) , пологающийся на GC, и сразу станет все понятно.

        Ручное управление сессиями -- не нужно никому и никогда. От него только ненужный бойлерплейт и тупые ошибки новичков (которым непонятно куда воткнуть сешн старт). Потому в нормальных платформах сессиями управляет контейнер (или сервер)
        Ответить
        • ручное управление сессией фишка php. ИМХО удобно нужна сессия включил не нужна выключил. Все просто и элегантно. Можно различные наймспейсы для сессий задавать это тоже в ручную. очень удобно.
          Ответить
            • Мне более интересно когда это НЕ удобно. ИМХО удобно всегда.
              Ответить
              • удобно что?
                каждый раз писать session_start($_COOKIE['sess']); ?

                Вам платят за строчки кода?
                Ответить
                • неет не так. Изучите синтаксис языка к которому у вас столь пренебрежительное отношение но это лирика. По существу.

                  Имена сессий удобно задавать если например проект пишет пара прогеров один пишет модуль А другой модуль B так переменные в сессии находятся в глобальной зоне видимости может случится так что оба прогера запишут в сессию переменную с одним именем и может так случится ,что искать причину глюков они будут ох как долго. Поэтому заводится для каждого модуля имя сессии и все довольны и счастливы. Обмен между данными модулями происходит только чрез определенный интерфейс. И все ни какого говна.
                  Ответить
                  • 1) что я не так написал?

                    2) ага)))) потому надо иметь 10 сессий и десять кук.
                    эта задача решается через неймспейсы. Есть такое понятие, лет 30 назад изобрели. Вроде бы в последних версиях PHP оно тоже появлется. С учетом того, что новинки доходят до мира ПХП в течение 30 лет, то можно думать что к 2030му году управление сессиями в пхп так же станет автоматическим, как в джаве или дотнете например
                    Ответить
                    • 1. session_start не принимает параметров
                      session_name устанавливает получае имя сессии

                      и кстати в пыхе можно автоматом включать сессии.

                      надо только php.ini поправить по умолчнию авто сессии отключены.

                      ну нету в похапе нейм спейсов были вот но разрабы сказали что отменят их. ИМХО сессия это то глобальная зона неймспейсы там не действуют но может я и ошибаюсь.
                      Ответить
                      • 1) да) session_id надо вызывать.
                        глобальные функции в действии. причем не ресурс передают (как в нормальном процедурном стиле) а просто глобально изменяют ID. Прекрасный пример того, что API PHP -- говно даже по меркам 1976го года.


                        в Вашем примере с двумя разработчиками -- каждый должен вызвать session_id -- это будет ад) особенно, если вдруг случайнов пхп введут многопоточность

                        2) неймспейсы можно иметь у имен переменных в сессии
                        Ответить
                    • ай бида у меня с запятыми. Ну не как не пойму куда их вставлять.
                      Ответить
                      • и не только с запятыми, неужели сам ни разу не читал свою писанину ???
                        Ответить
      • программист не должен вручную управлять сессиями
        это бессмыслено
        это все равно, как явно передавать два перевода строки после заголовков перед телом (см спецификацию http). Так делали в perl/cgi в 97м году
        Ответить

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

Где здесь C++, guest?!

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


    8