- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
void Logger::LogString( std::string &s )
{
if (s.size() > 4096) {
// предотвращаем слишком длиные строки в логе.
s.resize( 4096 );
}
m_LogStream << LogMessagePrefix() << s << std::endl;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+172
void Logger::LogString( std::string &s )
{
if (s.size() > 4096) {
// предотвращаем слишком длиные строки в логе.
s.resize( 4096 );
}
m_LogStream << LogMessagePrefix() << s << std::endl;
}
народ пару дней понадобилось найти почему XML сообщения, размером слегка больше обычного, Xerces не принимает. идеи иссякли - пока в лог не посмотрели и не нашли вот по такому (проиллюстрированому выше) чудо принципу работающий логгер.
+172
<td><?="ID"?>:</td>
Пример из документации Bitrix
http://dev.1c-bitrix.ru/api_help/main/general/admin.section/classes/cadminfilter
+172
preg_match_all('/([h][t][t][p][:][\/][\/]([^\/]+)[\/][^\s">]+)[\s">]/is',$subject,$matches);
Каждому знаку по домику!
Регулярные премудрости или президентская программа в действии.
Да, и с возвращением всех!!!
+172
// подключение библиотек и конфига
require_once($_SERVER["DOCUMENT_ROOT"]."/config.php");
require_once($_SERVER["DOCUMENT_ROOT"]."/content/lib/tree.php");
require_once($_SERVER["DOCUMENT_ROOT"]."/content/lib/func.php");
extract($_GET);
if (isset($d1)&&(f_del_date($d1)!="")) {
$arr[0]=f_n_date($d1); // очистка первой переменной
if (isset($d2)&&(f_del_date($d2)!="")) {
$arr[1]=f_n_date($d2); // очистка второй переменной
if (isset($d3)&&(f_del_date($d3)!="")) {
$arr[2]=f_n_date($d3); // очистка третьей переменной
if (isset($d4)&&(f_del_date($d4)!="")) {
$arr[3]=f_n_date($d4); // очистка четвертой переменной
if (isset($d5)&&(f_del_date($d5)!="")) {
$arr[4]=f_n_date($d5); // очистка пятой переменной
if (isset($d6)&&(f_del_date($d6)!="")) {
$arr[5]=f_n_date($d6); // очистка шестой переменной
if (isset($d7)&&(f_del_date($d7)!="")) {
$arr[6]=f_n_date($d7); // очистка седьмой переменной
if (isset($d8)&&(f_del_date($d8)!="")) {
$arr[7]=f_n_date($d8); // очистка восьмой переменной
if (isset($d9)&&(f_del_date($d9)!="")) {
$arr[8]=f_n_date($d9); // очистка девятой переменной
if (isset($d10)&&(f_del_date($d10)!="")) {
$arr[9]=f_n_date($d10); // очистка десятой переменной
if (isset($d11)&&(f_del_date($d11)!="")) {
$arr[10]=f_n_date($d11); // очистка одинадцатой переменной
}
}
}
}
}
}
}
}
}
}
}
Это чудесная CMS Black Crystal (Кристалл-чернуха), админка у нее такая же, как и сам код.
+172
$i = 1;
while ($ip = mysql_fetch_array($result))
{
$ip_end = explode(".", $ip[0]);
if ($ip_end[3] != $i && $i < 245 && $i != 100)
{
$ip_pub = "{$mask}.$i";
$i = 246;
}
$i++;
}
Буквально на неделю отлучился, а один товарищ накрапал такую конструкцию
+172
<?
@session_start();
$fini=rand(0,9);
if($fini==1){
$_SESSION['idi']='ZM55PKL216';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka1.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==2){
$_SESSION['idi']='2K1P6LZ55M';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka2.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==3){
$_SESSION['idi']='LK561MP5Z2';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka3.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==4){
$_SESSION['idi']='65ZP1MLK25';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka4.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==5){
$_SESSION['idi']='552P6LM1ZK';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka5.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==6){
$_SESSION['idi']='ZP2M615LK5';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka6.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==7){
$_SESSION['idi']='KM5P2Z615L';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka7.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==8){
$_SESSION['idi']='2KP5Z16L5M';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka8.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==9){
$_SESSION['idi']='PKM15Z25L6';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka9.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
if($fini==0){
$_SESSION['idi']='6ZP5L25M1K';
echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka10.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<div style="position:absolute; top:-10px; left:25px; width: 340px; height: 49px; z-index:8;"><font size="+2" color="#333399" style="position:absolute; top:236px; left:-5px; width: 284px;">Контрольное значение для ячейки значение:</font>
</div>
Содержимое файла "kontrolnoe znachenie.php".
Великий и ужасный "генератор капчи". Особая прелесть в том, что файл начинается с пустой строки, а потом уже идет <?@session_start(). Кто сталкивался с проблемой "Headers are already sent" поймет, поймет также почему автор наивно пытается исправить эту проблему с помощью @.
Продолжение серии: #4101, #4100.
+172
<?php
$strings = array();
$strings[] = "10_strings_0";
$strings[] = "10_strings_1x";
$strings[] = "10_strings_2";
$strings[] = "10_strings_3";
$strings[] = "10_strings_4x";
$strings[] = "10_strings_5x";
$strings[] = "10_strings_6";
$strings[] = "10_strings_7x";
$strings[] = "10_strings_8";
$strings[] = "10_strings_9";
// СПИСОК СТРОК ИЗ 100 СТРОК В КОТОРЫХ БУДЕТ ОСУЩЕСТВЛЯТЬСЯ ПОИСК СТРОК ИЗ СПИСКА $strings
for ($counter=0; $counter<100; $counter++)
{
$check_strings[] = "10_strings_".$counter;
}
// Временная папка - папка со скриптом
// создание vbs файлов
for ($strings_c=0; $strings_c<sizeof($strings); $strings_c++)
{
$file = fopen($strings[$strings_c].'.vbs', 'w');
fwrite($file, 'Set Program = Wscript.CreateObject("Wscript.Shell")'.PHP_EOL.'Program.Run("'.$strings[$strings_c].'.bat'.'")'.PHP_EOL.'Wscript.Quit');
fclose($file);
}
// создание bat файлов
$interpreter_root = 'C:\xampp\php\php.exe'; // путь к PHP интерпретатору
for ($strings_c=0; $strings_c<sizeof($strings); $strings_c++)
{
$file = fopen($strings[$strings_c].'.bat', 'w');
fwrite($file, $interpreter_root.' '.$strings[$strings_c].'.php');
fclose($file);
}
// создание php файлов
for ($strings_c=0; $strings_c<sizeof($strings); $strings_c++) {
$code = '<?php
$string = \''.$strings[$strings_c].'\'; // строка для проверки, в каждом экземпляре своя
for ($counter=0; $counter<100; $counter++)
{
$check_strings[] = "10_strings_".$counter;
}
shuffle($check_strings);
$ok = false;
for ($check_strings_c=0; $check_strings_c<sizeof($check_strings); $check_strings_c++)
{
if ($string == $check_strings[$check_strings_c])
{
$ok = true;
break;
}
}
if ($ok == true)
{
$file = fopen("'.$strings[$strings_c].'_ok.txt", "w");
fclose($file);
}
?>';
$file = fopen($strings[$strings_c].'.php', 'w');
fwrite($file, $code);
многопоточность на PHP
+172
function getCodeByCode(code)
хорошее название функции
+172
map<pair<pair<int,int>, int>, vector<pair<pair<int,int>, pair<int,int> > > > m;
великолепно потом пробегать по коллекции
+172
<script type="text/javascript" src='/wps/CacheProxyServlet/colorPalette/default/browserVendor/Netscape/browserName/Navigator/browserVersion/unknown/locale/ru/forwardurl/wps/themes/html/pgu/./js.jsp'></script>
с сайта http://portal.rosreestr.ru