Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if checkbox1.Checked then checkbox2.Checked:=false;
if checkbox1.Checked then checkbox3.Checked:=false;
if checkbox1.Checked then checkbox4.Checked:=false;
if checkbox1.Checked then checkbox5.Checked:=false;
if checkbox1.Checked then checkbox6.Checked:=false;
if checkbox1.Checked then checkbox7.Checked:=false;
if checkbox1.Checked then checkbox8.Checked:=false;
if checkbox1.Checked then checkbox9.Checked:=false;
if checkbox1.Checked then checkbox10.Checked:=false;
if checkbox1.Checked then checkbox11.Checked:=false;
if checkbox1.Checked then checkbox12.Checked:=false;
if checkbox1.Checked then image1.Visible:=true else
image1.Visible:=false;
if checkbox1.Checked then statictext2.Visible:=true else
statictext2.Visible:=false;
if checkbox1.Checked then statictext3.Visible:=true else
statictext3.Visible:=false;
end;
procedure TForm1.CheckBox3Click(Sender: TObject);
begin
if checkbox3.Checked then image2.Visible:=true else
image2.Visible:=false;
if checkbox3.Checked then statictext5.Visible:=true else
statictext5.Visible:=false;
if checkbox3.Checked then statictext4.Visible:=true else
statictext4.Visible:=false;
if checkbox3.Checked then checkbox1.Checked:=false;
if checkbox3.Checked then checkbox2.Checked:=false;
if checkbox3.Checked then checkbox4.Checked:=false;
if checkbox3.Checked then checkbox5.Checked:=false;
if checkbox3.Checked then checkbox6.Checked:=false;
if checkbox3.Checked then checkbox7.Checked:=false;
if checkbox3.Checked then checkbox8.Checked:=false;
if checkbox3.Checked then checkbox9.Checked:=false;
if checkbox3.Checked then checkbox10.Checked:=false;
if checkbox3.Checked then checkbox11.Checked:=false;
if checkbox3.Checked then checkbox12.Checked:=false;
end;
procedure TForm1.CheckBox4Click(Sender: TObject);
begin
if checkbox4.Checked then image3.Visible:=true else
image3.Visible:=false;
if checkbox4.Checked then statictext6.Visible:=true else
statictext6.Visible:=false;
if checkbox4.Checked then statictext7.Visible:=true else
statictext7.Visible:=false;
if checkbox4.Checked then checkbox1.Checked:=false;
if checkbox4.Checked then checkbox2.Checked:=false;
if checkbox4.Checked then checkbox3.Checked:=false;
if checkbox4.Checked then checkbox5.Checked:=false;
if checkbox4.Checked then checkbox6.Checked:=false;
if checkbox4.Checked then checkbox7.Checked:=false;
if checkbox4.Checked then checkbox8.Checked:=false;
if checkbox4.Checked then checkbox9.Checked:=false;
if checkbox4.Checked then checkbox10.Checked:=false;
if checkbox4.Checked then checkbox11.Checked:=false;
if checkbox4.Checked then checkbox12.Checked:=false;
end;
procedure TForm1.CheckBox2Click(Sender: TObject);
begin
if checkbox2.Checked then image4.Visible:=true else
image4.Visible:=false;
if checkbox2.Checked then statictext8.Visible:=true else
statictext8.Visible:=false;
if checkbox2.Checked then statictext9.Visible:=true else
statictext9.Visible:=false;
if checkbox2.Checked then checkbox1.Checked:=false;
if checkbox2.Checked then checkbox3.Checked:=false;
if checkbox2.Checked then checkbox4.Checked:=false;
if checkbox2.Checked then checkbox5.Checked:=false;
if checkbox2.Checked then checkbox6.Checked:=false;
if checkbox2.Checked then checkbox7.Checked:=false;
if checkbox2.Checked then checkbox8.Checked:=false;
if checkbox2.Checked then checkbox9.Checked:=false;
if checkbox2.Checked then checkbox10.Checked:=false;
if checkbox2.Checked then checkbox11.Checked:=false;
if checkbox2.Checked then checkbox12.Checked:=false;
end;
procedure TForm1.CheckBox9Click(Sender: TObject);
begin
if checkbox9.Checked then image5.Visible:=true else
image5.Visible:=false;
if checkbox9.Checked then statictext10.Visible:=true else
statictext10.Visible:=false;
if checkbox9.Checked then statictext11.Visible:=true else
statictext11.Visible:=false;
if checkbox9.Checked then checkbox1.Checked:=false;
if checkbox9.Checked then checkbox2.Checked:=false;
if checkbox9.Checked then checkbox3.Checked:=false;
это делфи и это только часть кода всего там 144 if))
Какое же скучное занятие это програмирование: целый день мышкой нажимать, чтобы узнать, какой номер у какого чекбокса... А если потом придётся форму менять, совсем запутаться можно...
Один раз мне нужно было поменять строку подключения к My
SQL на каждой странице моего веб приложения, а это 1500 .php файлов, между прочим!
И ничего: сделал! Потому что работа есть работа
Я кажется вас обоих знаю. Мне потом пришлось за вами лазать по всем 1500 файлам и ставить собачку перед mysql_connect(), что б параметры подключения не светить.
Чёрт, забыл, что без зелёного тут сарказм не понимают.
Не знаю, спалит ли пароль сам mysql_connect() в сообщении, но сама пыхомакака может написать свой error handler и выводить на экран не только сообщение об ошибке, но и подробнейший бектрейс вместе с параметрами. Это PHP, детка, тут даже обращение к встроенным функциям UB.
>алсо в рнр вообще никак нельзя отключить вывод ошибок в браузер?
Можно, но через жопу говноконфиг или через пердолинг с ini_set() в рантайме. Однако операторы шаблонизатора третьего разряда предпочитают выборочно гасить неважные ошибки собакой вручную, ведь они же лучше знают, как должен работать код.
>но сама пыхомакака может написать свой error handler и выводить на экран не только сообщение об ошибке, но и подробнейший бектрейс вместе с параметрами.
>Это PHP, детка, тут даже обращение к встроенным функциям UB.
Ну такое можно при желании и в питоне сделать. При желании в питоне очень многое можно сделать, втч и то чего делать не стоит.
Конечно, ну а как же еще, если требования такие?
В системе правда более тысячи сценариев, и многие используют базу, это же веб приложение!
Я общался с опытными PHP разработчиками, мне все в один голос сказали что других решений нет.
Это еще что: однажды я зашел по FTP тотал коммандером, нажал F4 и менял подключение в базе. А в то же самое время наш верситальщик тоже зашел в этот файл, и правил там какой-то css.
И вот мои изменения похоже перетёрли его. С тех пор у нас правило: хочешь поменять файлик -- говори всем об этом, например "я меняю katalog_igrushky_mjaghkie.php" . Благо мы все в одной комнате сидим с ним и начальниками:)
>С тех пор у нас правило: хочешь поменять файлик -- говори всем об этом, например "я меняю katalog_igrushky_mjaghkie.php" . Благо мы все в одной комнате сидим с ним и начальниками:)
Потокобезопасность в реальном мире.
В такой ситуации надо обосновать перед начальством менеджера рабочей копии. Чтобы все изменения шли ему письмом, он его читал и делал нужные правки в нужном порядке по FTP.
Рисовал на бумажке рисунок с номерами?
Нужно иногда взять волю в кулак, и сделать.
Один раз мне нужно было поменять строку подключения к My
SQL на каждой странице моего веб приложения, а это 1500 .php файлов, между прочим!
И ничего: сделал! Потому что работа есть работа
Не знаю, спалит ли пароль сам mysql_connect() в сообщении, но сама пыхомакака может написать свой error handler и выводить на экран не только сообщение об ошибке, но и подробнейший бектрейс вместе с параметрами. Это PHP, детка, тут даже обращение к встроенным функциям UB.
>алсо в рнр вообще никак нельзя отключить вывод ошибок в браузер?
Можно, но через жопу говноконфиг или через пердолинг с ini_set() в рантайме. Однако операторы шаблонизатора третьего разряда предпочитают выборочно гасить неважные ошибки собакой вручную, ведь они же лучше знают, как должен работать код.
>Это PHP, детка, тут даже обращение к встроенным функциям UB.
Ну такое можно при желании и в питоне сделать. При желании в питоне очень многое можно сделать, втч и то чего делать не стоит.
не палит пароль
>может написать свой error handler
слишком громкое название для or die()
P.S. Логин и пароль тоже поди в каждом из 1500 файлов захардкожен?
В системе правда более тысячи сценариев, и многие используют базу, это же веб приложение!
Я общался с опытными PHP разработчиками, мне все в один голос сказали что других решений нет.
Это еще что: однажды я зашел по FTP тотал коммандером, нажал F4 и менял подключение в базе. А в то же самое время наш верситальщик тоже зашел в этот файл, и правил там какой-то css.
И вот мои изменения похоже перетёрли его. С тех пор у нас правило: хочешь поменять файлик -- говори всем об этом, например "я меняю katalog_igrushky_mjaghkie.php" . Благо мы все в одной комнате сидим с ним и начальниками:)
Кстати, а как бы вы эту проблему решили?
Потокобезопасность в реальном мире.
1) не править файлики прямо на боевом серваке
2) юзать систему контроля версий
Хотя это уже не так весело 😉
Весело было когда мы делали практикум по прогаммированию вдвоем и кидали файлики между двумя людьми и линупсом. После этого я стал юзать svn