Чтобы было понятно, вот представь у тебя банк. В банке есть отличная бронированная дверь, но ты ей по какой-то причине не пользуешься, а приладил рядом калиточку. Из туалетной бумаги. То есть абсолютно любой человек может зайти в твой банк и делать в нем все что захочет.
Вот это вот "eval('return $'. $str . ';');" - та самоя калиточка из соплей. Самое главное, что она не имеет никакого смысла потому что рядом есть нормальная дверь
$mpid = $_POST['mpid'.$i];
Ты не понимаешь что такое физический и виртуальный поддомен.
Настроек это вообще никак не касается. Для любых субдоменов настройки "физические". Субдомен в любом случае конфигурируется через настройки, ДНС и веб-сервера.
Физический - это когда у тебя отдельная папка с кодом для каждого субдомена. Виртуальный - это как у тебя, одна папка с кодом, и все субдомены просто ведут на нее.
Что тут понимать-то? я писал в своем ответе, Конкретный запрошенный хост берется из HTTP_HOST. Если входит в разрешенные, то показываем сайт, если нет - "закрыт как не существующие страницы". можно отдавать 404 например
Попытайтесь понять, что ошибка, которая происходит в скрипте, это не какая-то фантазия, которая пришла вам в голову, а конкретная проблема, которая описана понятным английским языком. Parse error - это не "пароль не найден", а ошибка парсинга, то есть РНР не может прочитать код, который вы написали.
Если ошибка другая - то ее снова надо прочесть ,понять и исправить.
Lander, ну так пдо и есть такой драйвер, так что спор в данном случае довольно абстрактный :)
По сути же я согласен c Михаил Братеньков . Даже если бы это был mysqli и пришлось переписывать на pg, то при наличии не имеющей протечек абстракции там дел на 1 день. То есть польза от класса-обертки очевидная. А то что написать грамотную обертку без протечек не так просто - это уже другой вопрос ;)