- 1
- 2
- 3
- 4
<? echo "$Welcome" ?> <?
$site = session_id();
echo ", <b>" . $_SESSION["esb2b_username"] . "</b>" ;
?>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+159
<? echo "$Welcome" ?> <?
$site = session_id();
echo ", <b>" . $_SESSION["esb2b_username"] . "</b>" ;
?>
Из одного китайско-арабского скрипта. Хорошо дан пробел после "Welcome".
+162
/*
Содержимое news.xml
<?xml version="1.0" encoding="utf-8"?>
<news>
<item>
<title>Новые поступления</title>
<text>
This program is free software;
</text>
<date>13:30 - 12.08.2004</date>
</item>
<item>
<title>ERERER поступления</title>
<text>
p pppppppppppppppp p p pp p pppppppppppppppppp pppppppppppppppppppppp
</text>
<date>18:30 - 12.08.2004</date>
</item>
</news>
*/
$file = fopen("news.xml","r");
fseek($file, 47, SEEK_SET);
$other = fread($file, 900000);
fseek($file, 0, SEEK_SET);
$prev = fread($file, 47);
fclose($file);
$file = fopen("news.xml","w");
//...
$text1 = "$text";
$title = "$h1";
$date = "$dates";
echo $other;
$all = $prev.'<item><title>'.$title.'</title><text>'.$text1.'</text><date>'.$date.'</date></item>'.$other;
$buff = fputs ($file, $all);
print $buff;
Оригинальный способ дописывать новую новость в xml файл.
Данный способ уже не кошерный:
$doc = new DOMDocument();
$doc->load($xml);
$item = $doc->createElement('item');
$news = $doc>getElementsByTagName('news')->item(0);
$news->appendChild($item);
$doc->save($xml);
+154
<?php
function import_var($name,$source,$type,$maxlen=0) {
$retarr=array();
if(is_array($name)) { // если нужно обработать массив с именами
foreach($name as $v) {
$retarr[$v] = import_var($v,$source,$type,$maxlen);
// рекурсивно запускаем себя же
}
if(sizeof($retarr)>0) return $retarr; // возвращаем массив
}
// если нужно обработать одну переменную
switch($source) {
case 'G':
if (isset($_GET[$name])) {
$var=$_GET[$name]; // из GET
}
break;
case 'P':
if (isset($_POST[$name])) {
$var=$_POST[$name]; // из POST
}
break;
case 'C':
if (isset($_COOKIE[$name])) {
$var=$_COOKIE[$name]; // из Cookie
}
break;
}
if(!isset($var)) return false; // если переменная существует
if(is_array($var)) return false; // и если это не массив...
if(get_magic_quotes_gpc()) $var = stripslashes($var);
// убираем лишние бэкслэши
if(empty($var)) return false; // если переменная пуста
if ($maxlen>0) $var = substr($var,0,$maxlen); //обрубаем лишнее
switch($type) { // теперь обрабатываем в соответствии с типом
case 'INT' : // число integer
return is_integer($var) ? $var : intval($var);
break;
case 'NUM' : // число integer или float
return is_numeric($var) ? $var : false;
break;
case 'HTML' : // текст, в котором могут содержаться тэги
return trim(htmlspecialchars($var));
break;
case 'SQL' : // строка, которая попадет в SQL-запрос
return mysql_real_escape_string(htmlspecialchars($var));
break;
case 'MAIL' : // email-адрес
return preg_match('/^[\w\.\-]+@\w+[\w\.\-]*?\.\w{2,4}$/',$var) ? $var : false;
break;
case 'ALPHA' : // только буквенные символы
return preg_match("/^[а-яА-ЯёЁa-zA-Z]+$/",$var) ? $var : false;
break;
case 'ALPHANUM' : // числовые и буквенные символы
return preg_match("/^[а-яА-ЯёЁa-zA-Z0-9]+$/",$var) ? $var : false;
break;
case 'MD5' : // md5-хэш
return preg_match("/^[a-fA-F0-9]{32}+$/",$var) ? $var : false;
break;
case 'SHA1' : // sha1-хэш
return preg_match("/^[a-fA-F0-9]{40}+$/",$var) ? $var : false;
break;
case 'BOOL': // булева величина
return ($var=="1" || $var=="true" || $var=="on") ? true : false;
break;
}
}
?>
http://raz0r.name/releases/funkciya-dlya-obrabotki-vxodyashhix-dannyx/
+161
$period = in_array($bullRegionId,array_keys($periods)) ? $periods[$bullRegionId]['text'] : $periods['default']['text'];
Интересна сама проверка на существование ключа, не правда ли? :-)
Код мой. Коллега учуял, что от него несколько плохо пахнет и предложил запостить сюда))
+153
function resetIsetSorting()
{
$db = 'i_set';
$co = -1;
$q = $this->db->get($db);
$r = $q->result();
foreach($r as $row)
{
$co++;
$upd['sort'] = $co;
$this->db->where('id_set', $row->id_set);
$this->db->update($db, $upd);
}
}
function isetSortExchange($sort, $canBeSort)
{
$db = 'i_set';
$bigNumber = 1470000;
$this->db->where('sort', $canBeSort);
$q = $this->db->get($db);
if ($q->num_rows() == 1)
{
$upd['sort'] = $bigNumber;
$this->db->where('sort', $canBeSort);
$this->db->update($db, $upd);
//
$upd['sort'] = $canBeSort;
$this->db->where('sort', $sort);
$this->db->update($db, $upd);
//
$upd['sort'] = $sort;
$this->db->where('sort', $bigNumber);
$this->db->update($db, $upd);
}
}
Первая функция призвана обновить поле sort на уникальные последовательные значение. Сначала хотел провернуть такое дело на SQL в PHPmyADMIN, но мозгов моих оказалось мало, и я сделал это на CodeIgniter. Говнокод ли это?
Вторая функция призвана для обмена значениями полей sort. Это нужно для сортировки чего либо в баз. Чутьё мне подсказывает что это можно проделать каким-то белее правильным путём, без использования $bigNumber = 1470000; (а вдруг количество строк достигнет этого числа??!!). Говнокод ли это?
Всё рабочее, только что проверил. Свежий код, только что написан!
+162
function validemail($email){
if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email))
return false;
$email_array = explode("@", $email);
$local_array = explode(".", $email_array[0]);
for ($i = 0; $i < sizeof($local_array); $i++) {
if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i]))
return false;
}
+173
define("RANDOM_NUM", rand(0, 10000000));
поясню: кодер думал, что каждый раз будет вызываться функция и генерить новое число, т.к. в коде далее идет ее использование как уникального идентификатора. Скорее всего, это один из первых скриптов того, кто писал.
+161
<?
if($page!='/volga' && $page!='/volga/index.php'){
// Тут всякий код
} if($page=='/volga' or $page=='/volga/index.php'){?>
// И тут тоже
<?}?>
+173
$lib = $app['memcache.wrapper'] === false ? false : $app['memcache.wrapper'];
я туплю????? или кто-то получает за количество символов ????
+165
$transaction_number = (int)$this->security->xss_clean(trim(htmlspecialchars(substr($transaction_number, 0, 50))));
if(!$transaction_number OR $transaction_number < 0)
$transaction_number = 0;
один из наших программистов пишет.
CodeIgniter.