В выводе дискриминант 0 и нет корней.
Дискриминант вычисляется правильно, но switch не пойму почему игнорирует условие, когда дискриминант = 0 и отрабатывает условие когда дискриминант меньше нуля.
С тернарным оператором я так понял он в таком случае неуместен?
Ну и с этим
Perun пишет:
насколько корректн/некорректно использование определения в условии(строка 6) и вообще такие записи в фале разметки, а не в php? Редактор кода PHP Storm ругается, говорит, что это плохая практика.
Можете объяснить чем отличается выполнения скрипта через консоль, и через локальный сервер? С локальным сервером не совсем понимаю, вернее - совсем не понимаю. PHP Storm запускает скрипт без опенсервера, и это работает через локальный сервер. и через запущенный опенсервер - тоже через локальный сервер. Надпись localhost я вижу в адресной строке только в варианте запуска в браузере через PHP Storm. И массивы $_SERVER отличаются при запуске через опернсервер и через PHP Storm(не через консоль, а в браузере)
Я так понимаю, что у меня что-то не работает/я неправильно делаю. Запускаю прямо в PHP Storm, но если открыть в браузере, то в браузере ошибки не видно. Я совсем запутался в связке PHP Storm - OpenServer.
Скрипт у меня получается запустить без запуска сервера внутри самого PHP Storm, открыть в браузере через PHP Storm, и запустив сервер так же открыть в самом PHP Storm и открыть через него в браузере. Во всех случаях разные результаты. и соответственно адресная строка в браузере отличается при запущенном сервере и не запущенном.
Я вообще не понимаю как одно связано с другим. и не знаю где почитать об этом/разобраться.
1<br><pre></pre>PHP Warning: scandir(): Directory name cannot be empty in C:\OSPanel\domains\214th\test.php on line 2
PHP Warning: count(): Parameter must be an array or an object that implements Countable in C:\OSPanel\domains\214th\test.php on line 3
PHP Warning: Invalid argument supplied for foreach() in C:\OSPanel\domains\214th\test.php on line 6
Process finished with exit code 0
Но вывод на экран при этом работает корректно..
Ругалось на неправильные данные, пока явно не привел $dir к типу массив, хотя вывод на экран в обоих случаях работает корректно.
А вот с первой ошибкой не понял - что имеется в виду пустое значение? Или это глобальная переменная интерпретируется как пустая? Она же не пустая, да и вывод на экран это показывает. Как поступать с этой ошибкой?
Думал, как назвать тему, так и не подобрал что реально отображает суть вопроса... К сути:
Как решить проблему/научиться практической структуризации? У себя вижу такую проблему: вроде как задачу понимаю, алгоритм в голове есть. А как доходит до реализации - начинаю путаться в деталях. Стрктура уже не кажется такой понятной, в коде появляются повторяющиеся участки. А после этого начинается процесс оптимизации что ли... Там где вижу - сокращаю, переделываю запросы, обработки форм, наряду с этим появляются другие идеи, и этот процесс затягивается надолго. Т.е. мне кажется проблема где-то на переходе от алгоритма к конкретно реализации в виде кода.
Давненько начинал изучать веб пограммирование, не было возможности продолжить заниматься, сейчас опять начал с нуля. Нашел тут задачку в сети, для начинающих. Я ее уже делал раньше. Хотел специально сравнить результаты. То что сделал сейчас оказалось более объемным, хотя по структуре как мне кажется - более понятным. Да и вообще, решая сейчас эту задачку, я ее переделывал раза три-четыре полностью с нуля и все разы, код у меня значительно отличался от предыдущего. Много условий при проверках, не знаю с какой стороны подступиться, начинаю путаться - Или структурированно в виде иерархии делать проверки одно условие за другим перебирать(но тогда код становится более объемным, хотя и более читаемым и понятным), или просто выписывать подряд пачками условия через if-else без всяких ветвлений и подусловий(но тогда в одном if оказывается много проверок сразу через "и" и "или")? Когда много условий и подусловий - вся эта каша перемешивается, когда начинаю сопоставлять условия из соседних if пачек, и это даже в коде всего то из 40 строчек... Хотя сами то по себе условные операторы понимаю хорошо как работают.
Спасибо, через print_r и смотрел.
В разметке не менял ничего, а вот в самом коде были лишние редиректы. Вернее они не лишние. но причина в них. Редирект в обработчике на самого себя использовал, чтобы при обновлении странички средствами браузера, данные введенные в форму, повторно не отправлялись на сервер а только по нажатию кнопки.
В разметке ничего не менял. Почему-то перестало нажатие кнопки передаваться. Передаю методом post. При этом другие параметры с этой же формы, такие же кнопки - передаются. Где искать проблему?
Сама кнопка выполняет основные заданные логикой функции, происходит обработка данных, но в массиве post не отображается.
Но при этом часть логики не работает. т.е. нет рекции на нажатие в другой области кода. Сам не пойму как это может быть.
Пользователю выводится форма и в зависимости от статуса или определенных действий клиента форма немного должна видоизмениться - одни элементы добавляются, другие наоборот скрываются.
Как правильнее делать?
Делать для каждой ситуации отдельную HTML форму и в зависимости от необходимости переадресовывать на нужную отдельную форму, или все это делать на одной единственной форме через задание свойств конкретным элементам - скрывать или показывать?