- 1
- 2
- 3
- 4
- 5
<?php
echo "If you see this then PHP works fine!";
?>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+132
<?php
echo "If you see this then PHP works fine!";
?>
Проверка работоспособности интерпретатора PHP.
+144.3
if(preg_match("/^((https?\:\/\/)?([a-z0-9]+\-*[a-z0-9]+)+\.)+[a-z0-9]{2,7}(\:[0-9]{1,4})?$/i", $_GET['url'])) print 'тута пля не ерор !';
else{print 'неверный url';}
no comments :D
+94.5
/// Из aspx файла
//<asp:Repeater ID="Repeater1" runat="server">
// <HeaderTemplate>
// <table width="100%" cellspacing="5">
// </HeaderTemplate>
// <ItemTemplate>
// <tr>
// <td>
// ...
// </td>
// <asp:Label runat="server" Visible='<%# DataBinder.Eval(Container.DataItem, "visibleCol2") %>'>
// <td>
// ...
// </td>
// </asp:Label>
// <asp:Label ID="LCol3" runat="server" Visible='<%# DataBinder.Eval(Container.DataItem, "visibleCol3") %>'>
// <td>
// ...
// </td>
// </asp:Label>
// </tr>
// </ItemTemplate>
// <FooterTemplate>
// </table>
// </FooterTemplate>
//</asp:Repeater>
// Из cs файла
DataTable dtres = // получаем товары
if (dtres != null && dtres.Rows.Count > 0)
{
DataTable dt = new DataTable();
/*...*/
for (int i=0;i<dtres.Rows.Count;)
{
DataRow dr=dtres.Rows[i];
/*...*/
int col2Index = i + 1;
if (col2Index < dtres.Rows.Count)
{
/*...*/
i++;
int col3Index = i + 1;
if (col3Index < dtres.Rows.Count)
{
/*...*/
i++;
}
else { /*...*/ }
}
else { /*...*/ }
dt.Rows.Add(newRow);
i++;
}
/*...*/
}
Человеку нужно было сделать товары в сетке 3x6.
От того что он сделал у меня пропал дар речи. (Чтобы тут очень много кода не бы большую (не нужную для понимания) часть заменил на "...")
Вобщем, в двух словах, он поместил вторую и третью ячейки таблицы в серверные контролы (причем в Label), а в коде берёт по три товара и засовывает в один RepeaterItem, ну а если количество товаров не делится нацело на три, то в последний RepeaterItem засовываются пустые данные, а Label делается невидимым.
Как-то так.
И самое главное, я не знаю, как человеку объяснить, что так нехорошо делать, т.к он главный программист...
+151
<?php
require_once ("../inc/core.php");
require_once ("../inc/header.php");
//
require_once ("../inc/classAudioFile.php");
require_once ("../inc/func.php");
/// Форма загрузки файла
if (!isset ($_POST['upload'])){
echo '<form action="upload.php" method="post" enctype="multipart/form-data">';
echo '<input type="file" name="fname"><br>';
echo '<input type="submit" name="upload" value="Загрузить"><br></form>';
}
//
$date = DATE ("Y-m-d");
$scriptdir = "$siteurl/mp3/";
$dir = "files/$date/";
$tmpfilename = $_FILES['fname']['tmp_name'];
$filename = $_FILES['fname']['name'];
$nfilename = trans ("MixON.mobi_".$filename);
$ext = explode (".",$filename);
$size = $_FILES['fname']['size'];
$adrfile = $dir.$nfilename;
$mp3url = $scriptdir.$adrfile;
//////////////
if (!is_dir ("files/$date")) mkdir ("files/$date", 0770);
if (isset($_POST['upload'])){
if (count($ext) !=2) {
echo "Файлы с двойным расширением запрещены. <br /> Должно быть так: <br /> filename.ext";
exit;
}
if ($ext[1] != 'mp3' ){
echo 'Разрешена загрузка только mp3 файлов.';
exit;
}
if (file_exists ($tmpfilename)){
copy ($tmpfilename, $adrfile);
//// Получаем теги файла
echo "Название файла: $filename <br />";
$AF = new AudioFile;
$AF->loadFile($adrfile);
//$AF -> printSampleInfo();
$channels = $AF -> wave_channels;
$framerate = $AF -> wave_framerate;
$byterate = $AF -> wave_byterate;
$length = $AF -> wave_length;
$title = $AF -> id3_title;
$title = trim(iconv('windows-1251','UTF-8',$title));
$artist = $AF -> id3_artist;
$artist = trim (iconv('windows-1251','UTF-8',$artist));
$album = $AF -> id3_album;
$album = trim (iconv('windows-1251','UTF-8',$album));
$year = $AF -> id3_year;
$year = trim (iconv('windows-1251','UTF-8',$year));
$genre = $AF -> id3_genre;
$genre = trim (iconv('windows-1251','UTF-8',$genre));
$comment = $AF -> id3_comment;
$comment = trim (iconv('windows-1251','UTF-8',$comment));
///Выводим мп3 теги
echo "Каналы: $channels <br /> Частота: $framerate <br /> Битрейт: $byterate <br /> ";
echo "Продолжительность: ".date('i:s', mktime(0,0,round($length))). "мин. <br /> ";
echo "Название: $title <br />";
echo "Исполнитель: $artist <br />";
echo "Стиль: $genre <br />";
if ($album != null) echo "Альбом: $album <br />";
if ($year != null) echo "Год: $year <br />";
}// Если файл закачалься и удачно скопирован
echo "<a href=\"http://$siteurl/$scriptdir/index.php?do=add\">Все верно</a>";
$do = isset($_GET['do']) ? $_GET['do'] : '';
switch ($do)
{
case 'admview':
$sql = "INSERT INTO `files` ( `id` , `title` , `artist` , `genre` , `album` , `year` , `mp3url` )
VALUES (
'', '$title', '$artist', '$genre', '$album', '$year', '$mp3url'
);";
csql ($sql);
mysql_query($sql);
echo "<a href=\"http://$siteurl/$scriptdir/index.php?do=edit\">Нужно изменить</a>";
}//switch do
}// Если нажата кнопка
require_once ("../inc/footer.php");
?>
+60.3
void AcquireSomething(..., boost::shared_ptr<Something> out)
{
...
out.reset(new Something());
}
жесть
+149.8
function getOffset(elem) {
if (elem.getBoundingClientRect) {
// "правильный" вариант
return getOffsetRect(elem)
} else {
// пусть работает хоть как-то
return getOffsetSum(elem)
}
}
+112.2
procedure TForm1.Button2Click(Sender: TObject);
var
result : Tdatetime;
begin
Result := EncodeDate(1970, 1, 1) + ((strtofloat(edit26.Text)+(strtofloat(edit2.Text)*3600)) / 86400); {86400=No. of secs. per day}
edit23.Text := formatdatetime('d', Result);
edit24.Text := formatdatetime('m', Result);
edit25.Text := formatdatetime('yyyy', Result);
edit27.Text := formatdatetime('h', Result);
edit28.Text := formatdatetime('n', Result);
edit29.Text := formatdatetime('s', Result);
edit30.text := datetimetostr(result);
form1.ActiveControl := edit30;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
x,y : extended;
begin
edit12.Text := formatdatetime('d', datetimepicker2.date);
edit17.Text := formatdatetime('m', datetimepicker2.date);
edit18.Text := formatdatetime('yyyy', datetimepicker2.date);
x := (EncodeDate(strtoint(edit18.text), strtoint(edit17.text), strtoint(edit12.text)) - EncodeDate(1970, 1, 1)) * 86400 ;
y := (strtoint(edit20.text)*3600) + (strtoint(edit21.text)*60) + strtoint(edit22.text);
x := x+y-(strtofloat(edit1.Text)*3600);
edit19.Text := floattostr(x);
form1.ActiveControl := edit19;
end;
Особенно старательный ковнокодер, умудрился растянуть на 30 строк то, что реально заняло у меня 8.
ну я не говорю еще про большую описательную часть его кода.
+68.6
function isstring(str1,str2:string):boolean;
begin
result:=(AnsiPos(AnsiLowerCase(str1),AnsiLowerCase(str2))>0)
end;
Функция проверяет, содержит ли строка str2 строку str1 не учитывая регистр.
Возвращает true, если содержит, в противном случае возвращает false.
−176.1
ДатаНачалаПериода = НачалоМесяца(Дата(Строка(Формат(ТекущийГод, "ЧГ=0")) + Строка(ТекущийМесяц) + "01"));
Фрагмент кода от разработчиков конфигурации. Дело в том, что дату начала текущего месяца можно получить как НачалоМесяца(ТекущаяДата()). Даже если предположить, что переменные "ТекущийГод" и "ТекущийМесяц" содержат не актуальные значения (например, при перерасчете прошлых документов), достаточно выполнить НачалоМесяца(Дата(ТекущийГод, ТекущийМесяц, 1))
+158.9
static $badwords = array(
...
'(?<=[_\d]) [гg]_?[оo]_?[вvb]_?[нnh]_?[оoаaяеeyу]', #говн[оаяеу]
...
);
самый дословный (мета-)говнокод.
из censure.php -- Функция пытается определить наличие мата (нецензурных, матерных слов) в html-тексте.
http://forum.dklab.ru/viewtopic.php?t=17146