- 1
https://imgur.com/w4Dbg19
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
https://imgur.com/w4Dbg19
наймите @нормальных программистов
+3
// Вот код скрипта для отправки емейла:
mb_internal_encoding ("utf-8");
$from = "Иван Иванов <[email protected]>";
$to = $name."<$email>";
$subject = "Подтверждение подписки";
$message = "текст письма здесь";
$headers = "From: ".$from."\nReply-To: ".$from."\nContent-Type: text/plain; charset=utf-8\nContent-Transfer-Encoding: 8bit";
mail ($to, $subject, $message, $headers);
// И что характерно, само тело письма приходит в правильной кодировке. А вот поля отправителя,
// получателя и сабж письма - в краказябинах. Сами тексты этих полей 100% написаны в utf-8, код скрипта тоже в utf-8.
// Вот что что я вижу в почте:
// Subject: РРѕРґСРІРµСждение РїРѕРґРїРёСРєРё
// From: Рван Рванов <[email protected]>
// Reply-To: Рван Рванов <[email protected]>
// ...
// Проблема решилась следующим образом:
$subject = "=?utf-8?B?" . base64_encode("Подтверждение подписки") . "?=";
// И так для каждого поля.
https://phpclub.ru/talk/threads/Нужна-помощь-битая-кодировка-в-письме.82881/
+2
https://habr.com/ru/post/501798/
> C++/Qt: пора валить?.
Выбор небогат – это PHP. Да, я сказал PHP. И мне не стыдно.
Ещё раз напомню, о каком типе приложений идёт речь: о тех, где сложная логика, требующая вычислительной производительности, реализована на C/C++, а к ним в пару нам нужен как можно более простой открытый язык/экосистема для общения с внешним миром и связи компонентов между собой. А если будет C-подобный синтаксис – вообще хорошо. И тут мы ставим галочки напротив каждого пункта наших требований.
Главное – PHP прост. При том круге задач, которые он (и экосистема) может решать — он божественно прост. И дело не только в когнитивной нагрузке при кодинге и переключении контекста. Простота ещё и в развёртывании, администрировании и минимальном количестве вариантов, которыми можно решить одну задачу.
PHP медленно, без резких движений, ползёт в правильную сторону, от увеличения производительности в 3 раза, до строгой типизации, решая задачи простым способом. И обрастая по пути крутыми штуками типа Swoole.
PHP реализовал офигенский FFI (foreign function interface) к C. Офигенский в том контексте, о котором идёт речь — сочетании простоты и возможностей. Вы только наберите в гугле «PHP: Basic FFI usage».
В PHP кругом $, а кто по нынешнему курсу их не любит...
PHP быстрый. Да. Могу по слогам: бы-стрый. Для своей простоты и задач он божественно быстрый.
+1
public function isSpecial()
{
$special_ids = array(
2222,
3028,
3333,
5555,
5702,
6666,
6700,
7654,
7777,
8451,
11225
);
return in_array((int)$this->getId(), $special_ids);
//return $this->getId() == 2222 || $this->getId() == 3028 || $this->getId() == 3333 || $this->getId() == 5555 || $this->getId() == 5702;
}
https://github.com/wiistriker/govnokod_legacy/blob/master/modules/quoter/models/quote.php
Рекурсивный говнокод.
0
<?php
function get_post_id($comment_list_id) {
$rawdata = file_get_contents("https://govnokod.ru/comments/$comment_list_id/post");
$rawdata='<?xml encoding="UTF-8">'.$rawdata;
$old_libxml_error = libxml_use_internal_errors(true);
$dom = new DOMDocument;
$dom->loadHTML($rawdata);
libxml_use_internal_errors($old_libxml_error);
$xpath = new DOMXPath($dom);
$entries = $xpath->query('//*[@id="content"]/ol[@class="posts hatom"]/li[@class="hentry"]/h2/a');
foreach($entries as $entry) {
$href = $entry->getAttribute('href');
if(preg_match('#https://govnokod.ru/(\d+)#', $href, $matches)) {
$post_id = $matches[1];
break;
}
}
return $post_id;
}
$outf = fopen('postids.csv', 'w');
fputcsv($outf, array('post_id','comment_list_id'));
for($i = 1; $i <= 26663; $i++) {
fputcsv($outf, array(get_post_id($i), $i));
}
fclose($outf);
Получение списка всех говнокодов, комментарии к которым можно восстановить.
0
https://t.me/GovnokodBot
Напомню, или может кто не знал.
P.S. Кстати, guest8 достаточно раскрученный, поэтому здесь может быть ваша реклама.
0
function check_license()
{
$m = 40141;
$p = 291;
$root_dir = dirname(__FILE__);
$fn = 'file_get_contents';
$lic = ($root_dir.'/license');
$d = split(' ', trim(file_get_contents($lic)));
$result = 1;
$max = count($d);
for ($j=0x0; $j<$max; $j++)
{
$b=base_convert($d[$j],36,10);
$result = 1;
for($i=0x0; $i<$p; $i++)
{
$result = ($result*$b) % $m;
}
$decoded .= chr($result);
}
$license = split('#', $decoded);
$hash = $license[1];
$data = $license[0];
$host = $host1 = $_SERVER['HTTP_HOST'];
$host2 = getenv('HTTP_HOST');
if(function_exists('apache_getenv'))
$host3 = apache_getenv('HTTP_HOST');
else
$host3 = $host1;
if(!($host1 == $host2 && $host1 == $host3))
return false;
$ip = getenv('REMOTE_ADDR');
if($_SERVER['REMOTE_ADDR'] == $ip && substr($ip,0,3)=='127' && strtoupper(substr(php_uname(), 0, 3)) === 'WIN' )
{
return true;
}
$l_array = split(';', $data);
$domain = $l_array[0];
if(isset($l_array[1]))
$start = $l_array[1];
else
return false;
if(isset($l_array[2]))
$end = $l_array[2];
else
return false;
if(isset($l_array[3]))
$comment = $l_array[3];
else
$comment = '';
$domns = split(',', $domain);
$ok = false;
foreach($domns as $d)
{
if(strtolower(trim($d)) == strtolower($host))
$ok = true;
}
if(!$ok)
return false;
if(strtotime($start)>time())
return false;
if(strtotime($end)<time())
return false;
return true;
}
Проверка лицензии в Simpla CMS первой версии
0
$output = '<div class="catalog catalog-category">';
$query = db_select('taxonomy_term_data','td');
$query->innerJoin('field_data_field_category', 'fc', "fc.field_category_tid = td.tid");
$query->innerJoin('taxonomy_term_hierarchy', 'tth', "tth.tid = td.tid");
$query->innerJoin('node', 'n', "n.nid = fc.entity_id");
$query->condition('td.vid', 4);
$query->condition('n.status', 1);
$query->condition('tth.parent', 0);
$query->fields('td', array('tid', 'name'));
$query->groupBy('td.tid');
$query->orderBy('td.weight', 'ASC');
$terms = $query->execute()->fetchAll();
foreach ($terms as $term) {
$prod_out = '';
$query = db_select('field_data_field_product', 'fp');
// Выбираем товары текущего типа
$query->innerJoin('node', 'n', "n.nid = fp.entity_id");
$query->innerJoin('field_data_field_category', 'fc', "fc.entity_id = n.nid");
$query->condition('n.status', 1);
$query->condition('fc.field_category_tid', $term->tid);
// Заголовок товара
$query->innerJoin('commerce_product', 'cp', "cp.product_id = fp.field_product_product_id");
$query->condition('cp.status', 1);
$query->fields('cp', array('title'));
// Цена без скидки
$query->innerJoin('field_data_commerce_price', 'dcp', "dcp.entity_id = fp.field_product_product_id");
$query->fields('dcp', array('commerce_price_amount'));
// Размер скидки
$query->leftJoin('field_data_field_discount', 'dcpd', "dcpd.entity_id = fp.field_product_product_id");
$query->fields('dcpd', array('field_discount_value'));
// Цена со скидкой
$query->leftJoin('field_data_field_price_new', 'dcpn', "dcpn.entity_id = fp.field_product_product_id");
$query->fields('dcpn', array('field_price_new_value'));
// Первое изображение
$query->innerJoin('field_data_field_image', 'dfi', "dfi.entity_id = fp.field_product_product_id");
$query->condition('dfi.delta', 0);
$query->fields('dfi', array('field_image_fid'));
$query->innerJoin('field_data_field_weight', 'fw', "fw.entity_id = fp.field_product_product_id");
$query->addExpression("(SELECT GROUP_CONCAT(td.name SEPARATOR ', ') FROM field_data_field_season AS dfs INNER JOIN taxonomy_term_data AS td ON td.tid=dfs.field_season_tid WHERE dfs.entity_id=n.nid)","name");
// Маркер
$query->leftJoin('field_data_field_marker', 'dfm', "dfm.entity_id = fp.field_product_product_id");
$query->fields('dfm', array('field_marker_value'));
// Товар
$query->fields('fp', array('field_product_product_id'));
// Связанная с товаром нода
$query->fields('n', array('nid'));
$query->range(0, 4);
$query->orderBy('fw.field_weight_value', 'ASC');
$products = $query->execute()->fetchAll();
// $output .= '<h2>' . l($term->name, 'taxonomy/term/'.$term->tid) . '</h2>';
$output .= '<div class="product_items">';
$output .= '<div class="catalog_item"><div style="width: 225px; height: 340px;"><h2>' . l($term->name, 'taxonomy/term/'.$term->tid) . '</h2></div></div>';
foreach ($products as $product) {
$fid = $product->field_image_fid;
if ($fid != 0 && is_numeric($fid)) {
$file_picture = file_load($fid);
$imageUrl = image_style_url('catalog', $file_picture->uri);
$title = $product->title;
$photo = "<img class='lazy-image' data-src='{$imageUrl}' alt='{$title}' title='{$title}'>";
}
else $photo = '';
$prod_out .= '<div class="catalog_item">';
$prod_out .= '<div class="title">' . l($product->title . '<br><span>' . $product->name . '</span><div>XS S M L XL</div>', 'node/'.$product->nid, array('html' => TRUE, 'query' => array('id' => $product->field_product_product_id))).'</div>';
$prod_out .= '<div class="image">' . $photo . '</div>';
if (!empty($product->field_discount_value)) {
$prod_out .= '<div class="views-field-field-discount"><div class="field-content">Sale ' . $product->field_discount_value . ' %</div></div>';
}
if (!empty($product->field_marker_value)) {
$prod_out .= '<div class="views-field-field-marker"><div class="field-content field-content field-content-' . $product->field_marker_value . '">' . ($product->field_marker_value == 'new'?'Новинка':'Бестселлер') . '</div></div>';
}
if (!empty($product->field_price_new_value)) {
$price = '<s>' . number_format($product->commerce_price_amount/100,0,'',' ') . '</s> ' . number_format($product->field_price_new_value,0,'',' ') . ' Р';
}
else {
$price = number_format($product->commerce_price_amount/100,0,'',' ') . ' Р';
}
$prod_out .= '<div class="views-field-field-price-new">' . $price . '</div>';
$prod_out .= '</div>';
}
}
$output .= $prod_out;
$output .= '<div class="catalog_item" style="position: absolute;">' . l('<img src="/sites/all/themes/base/img/strelka.png" style="width: 10px; height: 17px;">', 'taxonomy/term/'.$term->tid, array('html' => true)) . '</div>';
$output .= '</div>';
Уууъъъъъ пыхомразь
+5
function reclstr($txt1) {//утилизировать текст
$util = sha1( $txt1 . rand(0,54424456));
return $util;
}
+1
<?php
function qes2_key ( $key = null ) {
$key = str_split( $key );
$keycount = count( $key );
$xspos = 1;
$summ = 0;
foreach( $key as $letter ) {
$summ += ord( $letter ) * 2 + $xspos + ( $keycount / $xspos );
$xspos++;
}
$summ = explode('.', $summ );
return $summ[0];
}
function qes2_encrypt ( $input, $key ) {
$input = str_split( $input );
$icount = count( $input );
$rsumm = qes2_key( $key );
$result = '';
$xspos = 1;
$xsdisp = 1;
foreach( $input as $letter ) {
$char = ord( $letter ) + ( $rsumm * $xspos ) - $xsdisp ;
$result .= chr( $char );
$xspos++;
$xsdisp += 1;
}
return $result;
}
function qes2_decrypt ( $input, $key ) {
$input = str_split( $input );
$icount = count( $input );
$rsumm = qes2_key( $key );
$result = '';
$xspos = 1;
$xsdisp = 1;
foreach( $input as $letter ) {
$char = ord( $letter ) - ( $rsumm * $xspos ) + $xsdisp ;
$result .= chr( $char );
$xspos++;
$xsdisp += 1;
}
return $result;
}
qes2a encryption (c)