99% за то, что где-то позже в скрипте ошибки все-таки включаются.
Если скрипт собирает данные в переменную, а не напрямую echo их, то можно сделать так. Вначале ob_start - включить буферизацию, потом ob_end_clean почти в конце скрипта - все ошибки возникшие в ходе выполнения - окажутся в этом буфере (если скрипт эхом ничего не выводит), а потом уже echo контент страницы. Таким образом отдадите юзеру только контент страницы, вне зависимости от того кто и когда включил ошибки.
Как вариант - включите варнинги в пхп.ини и запретите функцию error_reporting, init_set там же если надо будет. После чего запускаете скрипт и видите в каком файле и на какой строке у Вас ошибка "error_reporting function not found", делаете выводы.
"Поубивав бы" (с) как так можно говорить?
С eval осторожнее.
В темы оформления и плагины (особенно этим страдает WP) нередко прячут копирайты через eval(base64_decode, типа партизаны. На каждом втором клиентском сайте такое. Выпиливается несложно, хотя у каждого плагина/темы это по разному.
В Joomla ее родные копирайты (или в какой-то из ее форков) зашиты примерно таким же образом. Без eval работать не будет (или надо выпиливать эту функцию, что не сложно и стандартно).
В dle (по крайней мере 8.2) защита лицензии в файле init.php была сделана через "закоденный" скрипт, который раскодировался при помощи eval-a. Опять же, без eval-а не запустится или надо раскодировать (что как бы запрещено лицензией). Кроме того в шаблы дле пхп код можно вставлять... он понятно через eval выполняется и если что - будет фэил.
В vbulletin плагины/модули/хуки выполняются через eval. Без eval-а не запустится в принципе, т.к. что-то из этого наверняка окажется, даже если не будет по дефолту.
Если у Вас один из этих вариантов, то сайты работать перестанут (там где встречается один из этих вариантов). Так что аккуратнее.
А вообще - не будет лишним чекнуть присутствие этих функций, запустите в шелле нечто вроде (мы не линюксоиды, поэтому простите за кривой код если что
find /home -type f -name '*.php' -exec grep -H "eval(" {} \; > suspectious.txt
для всех функций которые планируете отключить.
И разумеется надо настроить лог ошибок пхп что бы выводился в файл, что бы все вызовы несуществующих функций отлавливать было легче.
Каждому юзеру по своему вдс... :) остальное не особо надежно.
А нет ли где-нибудь места, где можно в открытом доступе посмотреть курсы wmz\wmr за пару лет? Ну кроме евентс, там откровенно не то, не так и срок маловат.
На больших проектах - только IDE (большие проекты - только zend studio почему-то), хинты изрядно помогают в них, разбираться там не надо и так все работает. А так - стандартно - самокомментирующийся код + дробление на куски (для себя взяли за правило, если логический кусок кода не влезает в экран или ветвление цикла/условий выше 3 - часть кода выносится в отдельную функцию).
А покажите пример о чем речь вообще? Как-то не вполне понятна связь между "разнесением на несколько файлов" и "забыванием что делает конкретный кусок кода". Казалось бы разнесение должно помогать, разносишь - сразу понятно что файл killmebplease делает что-нибудь душеспасительное 😂
Реально реквестируем пример.
Сайт у них да, лажа полная, половина кнопок не работает, половина инфы лажа, тикетница тоже отстой и исправлять это не хотят уже который год:( Видимо денег и так хватает:)
Однако по администрированию и/или покупке серверов (вирт.хостинг и вдс не брали) никаких серьезных претензий не было за все время сотрудничества, а это не первый год уже.
Для регистрации на главной есть кнопка - регистрация. Для покупки - проще создать тикет для отдела продаж, в личном кабинете, после регистрации уже.
В глобальном плане Вы в чём-то правы. Но вот свой топик зря в пример приводите. Вы говорите указали макс. планку? А если у Вас попросит 30 баксов в час человек который работает в 2 раза быстрее 20 баксового? Откажете?
Макс. планка имеет смысл только на "проектной оплате", на "почасовой" она смысла не имеет (за тем редким случаем, когда Вы указываете цену нормо-часа).
Допустим так
<?php if(first_image()) { ?><img class="alignleft noborder" src="<?php echo first_image(); ?>" /><? } ?>
Не очень понятно что Вам нужно. Выбрать ID всех пользователей у кого нет взносов за 2012 год? Тогда
select distinct(userid) from kadry where user_id is not in (select userid from vznosy where vz_year=2012)
Первый галакси есть с амоледом и с slcd (кажется i9001). Амолед (у 1-ого) против суперамоледа (как у 2), таки да, хуже. А вот slcd и суперамолед одного уровня экраны и выбор между ними субъективен (многим больше нравится slcd).
это для любителей линеек. где надо носить телефон что бы "толстый" первый не влезал, а "тонкий" второй влезал ?
Первый галакси.
Второй галакси по сути отличается только более шустрым процессором, который на самом деле практически и не нужен, достаточно шустрый был уже у первого. Остальные отличия минимальны.
И в 400 впишется если серый поискать.