1) Проверьте синтаксис всех конструкций if-else в вашем коде. Убедитесь, что каждый блок if имеет соответствующий блок else или elseif, и что они корректно вложены друг в друга. Убедитесь, что у вас нет лишних или ошибочных закрывающих скобок.
2) Если ошибка возникает в блоке else, убедитесь, что перед ним есть условие if или elseif. Если вы не хотите добавлять условие, можете заменить блок else на elseif(true), чтобы добавить универсальное условие.
3) Если ошибка возникает в блоке else, проверьте, не остался ли где-то лишний else без условия if или elseif. Если вы не хотите добавлять условие, можете заменить блок else на elseif(false), чтобы игнорировать его.
4) Убедитесь, что вы используете правильные скобки ({}), и они правильно расставлены. Проверьте, что все открывающие скобки имеют соответствующие закрывающие скобки и наоборот.
5) Если ошибка возникает вне блоков if-else, возможно, проблема связана с другой частью вашего кода. Проверьте синтаксис и логику других частей программы, чтобы обнаружить и исправить возможные ошибки.
Что касается второго вопроса:
Если не указано название базы данных в dbname, вы можете использовать пустую строку в качестве аргумента. Однако это некорректное использование функции подключения к базе данных, поскольку она требует указания названия базы данных для подключения.
Оптимальным решением будет указать верное название базы данных в dbname=... Оно должно быть определено вами или вашим администратором базы данных.