- 1
- 2
- 3
- 4
- 5
#param - строка
if(param[0]=='"' and param[-1]=='"'):
param = param.strip('"')
else:
param = param.strip("'")
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−171
#param - строка
if(param[0]=='"' and param[-1]=='"'):
param = param.strip('"')
else:
param = param.strip("'")
Приближенный алгоритм убирания кавычек. И ведь работает... как правило.
+125
$string="привет мир";
$string=encodeURI($string);
echo($string);
function encodeURI($string) {
$result = "";
for ($i = 0; $i < strlen($string); $i++) {
$result .= encodeURIbycharacter(urlencode(iconv ( "windows-1251","utf-8" , $string[$i])));
}
return $result;
}
function encodeURIbycharacter($char) {
if ($char == "+") { return "%20"; }
if ($char == "%21") { return "!"; }
if ($char == "%23") { return "#"; }
if ($char == "%24") { return "$"; }
if ($char == "%26") { return "&"; }
if ($char == "%27") { return "\""; }
if ($char == "%28") { return "("; }
if ($char == "%29") { return ")"; }
if ($char == "%2A") { return "*"; }
if ($char == "%2B") { return "+"; }
if ($char == "%2C") { return ","; }
if ($char == "%2F") { return "/"; }
if ($char == "%3A") { return ":"; }
.... Очень много строк
if ($char == "%9A") { return "%C5%A1"; }
if ($char == "%9B") { return "%E2%80%BA"; }
if ($char == "%9C") { return "%C5%93"; }
if ($char == "%B1") { return "%C2%B1"; }
if ($char == "%B2") { return "%C2%B2"; }
if ($char == "%B3") { return "%C2%B3"; }
if ($char == "%B4") { return "%C2%B4"; }
if ($char == "%B5") { return "%C2%B5"; }
if ($char == "%B6") { return "%C2%B6"; }
if ($char == "%B7") { return "%C2%B7"; }
if ($char == "%B8") { return "%C2%B8"; }
if ($char == "%B9") { return "%C2%B9"; }
if ($char == "%BA") { return "%C2%BA"; }
if ($char == "%BB") { return "%C2%BB"; }
if ($char == "%BC") { return "%C2%BC"; }
if ($char == "%BD") { return "%C2%BD"; }
if ($char == "%BE") { return "%C2%BE"; }
if ($char == "%BF") { return "%C2%BF"; }
if ($char == "%C0") { return "%C3%80"; }
if ($char == "%C1") { return "%C3%81"; }
if ($char == "%C2") { return "%C3%82"; }
По моему школьникам на каникулах скучно они прожат. Вот что я нашел
+119
<?php
session_start();
@include("config.php");
//Необходимо подключиться к БД
$link = mysql_connect($DBSERVER, $DBUSER, $DBPASS)
or die("Не могу подключиться" );
// сделать $DB текущей базой данных
mysql_select_db($DB, $link) or die ('Не могу выбрать БД');
echo "<h2>Страница активации</h2>";
$uniq = $_GET['id'];
if($_GET['id']='') { echo "Вы зашли на страницу без кода подтверждения"; }
elseif ($_GET['id'] != '') {
$log = mysql_query("SELECT * FROM users WHERE uniq_id='$uniq'");
$idi = mysql_query("SELECT status FROM users WHERE uniq_id='$uniq'");
if (empry($log)) { echo "Такой профиль не существует"; }
elseif(isset($log) AND $idi = 1) {echo "Данный профиль уже активирован"; }
elseif(isset($log) AND $idi = 0) {
$r=@mysql_query("UPDATE users SET status=1 WHERE status=0 AND uniq_id='$uniq' ");
echo '<h2>Ваша учетная запись активирована.</h2><br> Теперь вы можете <a href="index.php">войти на сайт</a> используя данные указанные при регистрации';
}
}
?>
−94
@timestart = MyModel.lastUpdateTime - 1.hour
day = "#{@timestart.day}"
day = "0#{day}" if day.size<2
mon = "#{@timestart.mon}"
mon = "0#{mon}" if mon.size<2
start1 = "'#{@timestart.year}-#{mon}-#{day} #{@timestart.hour}:#{@timestart.min}:#{@timestart.sec}'"
a = MyModel.find(:all, :conditions=>[ "`datetime` > #{start1}" ]
без комментариев
+164
$black = imagecolorallocate($img, 255, 255, 255);
Не совсем говнокод, конечно, но все же.
+112
private void UpdateLayerLOBStatus(bool allDisable)
{
bool enable = true;
if (allDisable)
{
enable = false;
}
SetStatuses(luLOBusiness, enable, true);
...........
}
Я не понимаю не то, что не я не говорю.
−126
.........................................
if [[ "$rez" = "0%" ]]
then
let "i = i + 1"
else
#Ещё чуток индийского кода:)
let "i = i + 0"
fi
done
.........................................
−864
Гавнокод --
SELECT * FROM Table1
WHERE [Id] not in
(
SELECT min([Id]) FROM Table1
WHERE [Code] in
(
SELECT [Code] FROM Table1
GROUP BY [Code] HAVING count([Code]) > 1
)
GROUP BY [Code]
)
and [Id] in
(
SELECT [Id] FROM Table1
WHERE [Code] in (
SELECT [Code] FROM Table1
GROUP BY [Code]
HAVING count([Code]) > 1
)
)
Нормальний варіант --
SELECT * FROM Table1 AS a
WHERE [Id] not in
(
SELECT min([Id]) FROM a_ListParam
WHERE a_ListParam.[Code] = a.[Code]
)
+144
...
<body>
<form action="top1.php" method="get">
<input type="checkbox" value="f1()" name="a1" > Windows 2000
<input type="checkbox" value="f2()" name="a2" > Windows 7
</form>
</body>
</html>
<?php
function f1(){
if($_POST['a1']){
echo 'Good';
}else
echo 'bad';
}
?>
Автор этого чуда хотел, чтоб
"При отметке галочкой первого чекбокса должно ниже самих чекбоксов вывестись слово good"
+117
static int ReadEvent (byte [] source, int off, int size, out InotifyEvent evt)
{
evt = new InotifyEvent ();
if (size <= 0 || off > size - 16) {
return -1;
}
int len;
if (BitConverter.IsLittleEndian) {
evt.WatchDescriptor = source [off] + (source [off + 1] << 8) +
(source [off + 2] << 16) + (source [off + 3] << 24);
evt.Mask = (InotifyMask) (source [off + 4] + (source [off + 5] << 8) +
(source [off + 6] << 16) + (source [off + 7] << 24));
// Ignore Cookie -> +4
len = source [off + 12] + (source [off + 13] << 8) +
(source [off + 14] << 16) + (source [off + 15] << 24);
} else {
evt.WatchDescriptor = source [off + 3] + (source [off + 2] << 8) +
(source [off + 1] << 16) + (source [off] << 24);
evt.Mask = (InotifyMask) (source [off + 7] + (source [off + 6] << 8) +
(source [off + 5] << 16) + (source [off + 4] << 24));
// Ignore Cookie -> +4
len = source [off + 15] + (source [off + 14] << 8) +
(source [off + 13] << 16) + (source [off + 12] << 24);
}
if (len > 0) {
if (off > size - 16 - len)
return -1;
string name = Encoding.UTF8.GetString (source, off + 16, len);
evt.Name = name.Trim ('\0');
} else {
evt.Name = null;
}
return 16 + len;
}
Mono, обёртка вокруг INotify (вокруг папки INotify создаёт поток (файл?), который нужно с помощью read читать в буфер, и в буфере будет лежать объект-событие в говносериализованной форме).
Давно столько магических чисел в одном месте не видел o_O
Можно ли в C# решить элегантнее?
Аналог всего этого кода на Си: struct inotify_event *event = ( struct inotify_event*) &buffer[i]