- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
$login='55526723433';
for($n=0; $n!=strlen($login)-2; $n++)
{
if( $login[$n] == $login[$n+1] && $login[$n] == $login[$n+2] )
{
echo 'есть повторение';
exit;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+150
$login='55526723433';
for($n=0; $n!=strlen($login)-2; $n++)
{
if( $login[$n] == $login[$n+1] && $login[$n] == $login[$n+2] )
{
echo 'есть повторение';
exit;
}
}
снова на ваш суд))
суть проблемы: проверка содержания строки, есть ли более двух одинаковых символов.
+150
Люди, помогите решить такой вопрос. Приведу пример:
Есть программист Петя. Он прочитал очень много книг по программированию,
и вообще умный парень :). И, так как, Петя прочитал много умных книг (Александреску к примеру),
он соответственно пишет умный код, используя различные фишки с++, например,
очень любит шаблоны (такие вещи типа статического полиморфизма и еще много
всего связанного с шаблонами и обобщенным программированием) или использует
сложные тернарные операторы… ну и т.д. … Соответственно код работает и все хорошо.
Как-то в разговоре с Петей ему сказали, что если так прогать, то может получиться
непрозрачный код.
На что он ответил: «Если алгоритм написан верно, и Каму-то непонятен код, то
проблема в том что человек просто плохо образован в плане программирования.
Ибо кто-то, например, не знает что такое классы и ему будет не прозрачен код,
в котором используют классы или обычное наследование. И соответственно не
писать же все процедурно, из-за того, что кто-то не знает что такое классы.
А само понятие прозрачности кода - ерунда ».
От сюда вопрос, Прав ли Петя и что такое вообще «Прозрачность кода»?
Или действительно код не может быть написан «Заумно», а тот, кто так
считает, просто плохо знает стандарт языка.
Вопрос совершенно серьёзный. //Не холивар.
+150
foreach( $vote->get() as $i => $variant )
{
. . .
$vote = +@$variant[ 'value' ];
. . .
}
Чтобы наверняка!
+150
<!--/ Блок логина /-->
<div class="icemodule"><div><div><div><div><h3><span>Мы</span> знакомы?!</h3></div></div></div></div></div>
<div id="loginarea">
<?php echo CHtml::form(Yii::app()->createUrl('site/login'),'post',array('id' => 'loginform')); ?>
<p id="login_username">
<?php echo CHtml::label('Логин','id_login'); ?>
<?php echo CHtml::textField($model->login, 'Логин', array('alt' => 'Логин', 'class' => 'inputbox', 'id' => 'id_login', 'onfocus' => 'if(this.value==\'Логин\') this.value=\'\';', 'onblur' => 'if(this.value==\'\') this.value=\'Логин\';',)); ?>
</p>
<p id="login_password">
<?php echo CHtml::label('Пароль','id_pass'); ?>
<?php echo CHtml::passwordField($model->pass, 'Пароль', array('alt' => 'Пароль', 'class' => 'inputbox', 'id' => 'id_pass', 'onfocus' => 'if(this.value==\'Пароль\') this.value=\'\';', 'onblur' => 'if(this.value==\'\') this.value=\'Пароль\';',)); ?>
</p>
<p id="login_button">
<button type="submit"><span class="round"><span>Войти</span></span></button>
</p>
<p id="login_remember">
<?php echo CHtml::checkBox($model->rememberMe, '', array('alt' => 'Запомнить Меня', 'class' => 'checkbox', 'id' => 'id_rememberMe',)); ?>
<?php echo CHtml::label('Запомнить','id_rememberMe'); ?>
</p>
<?php echo CHtml::endForm(); ?>
</div>
<div style="overflow: hidden; margin:0px 0px 10px 5px;">
<ul class="loginimages">
<li><?php echo CHtml::link('Забыли пароль', array('site/lostpass'));?> | </li>
<li><?php echo CHtml::link('Регистрация', array('site/rules'));?></li>
</ul>
</div>
<!--/ Конец блока логина /-->
+150
// don't show any errors to end user
error_reporting(0);
// error handler function
function my_error_handler($errno, $errstr, $errfile, $errline) {
$date = date('d/M/Y:H:i:s O');
// \r\n for cozy look on win machines
$error_str = "{$date} | [error] #{$errno}: {$errfile}:{$errline} {$errstr} \r\n";
// *.txt for win machines
error_log($error_str, 3, 'C:\AppServ\www\error_log.txt');
// don't execute php internal error handler
return true;
}
set_error_handler('my_error_handler');
// throws error
echo date();
Рубрика: Советы от Говнокода.
В связи с #7594. Fatal errors не ловит (пхп, хуле), но их и не нужно показывать пользователю, все остальные ошибки пишем в лог на сервер.
Ошибка в логе выглядит так:
21/Aug/2011:16:50:52 +0000 | [error] #2: C:\AppServ\www\4.php:22 date() expects at least 1 parameter, 0 given
+150
function Point(){
this.x = 0;
this.y = 0;
if(arguments.length==2){ //if parameters are 2 points
this.x = arguments[0] || 0;
this.y = arguments[1] || 0;
}else
if(arguments.length==1){ //if parameter is a point object
this.x = arguments[0].x;
this.y = arguments[0].y;
}
};
+150
window.jQuery = window.$ = jQuery;
})(window);;
(function(d) {
var k = d.scrollTo = function(a, i, e) {
d(window).scrollTo(a, i, e)
};
k.defaults = {
axis: 'xy',
duration: parseFloat(d.fn.jquery) >= 1.3 ? 0 : 1
};
k.window = function(a) {
return d(window)._scrollable()
};
d.fn._scrollable = function() {
return this.map(function() {
var a = this,
i = !a.nodeName || d.inArray(a.nodeName.toLowerCase(), ['iframe', '#document', 'html', 'body']) != -1;
if (!i) return a;
var e = (a.contentWindow || a).document || a.ownerDocument || a;
return d.browser.safari || e.compatMode == 'BackCompat' ? e.body : e.documentElement
})
};
+150
function keySave($key, $url)
{
$db = 'i_keys';
$this->keyDelete($key, $url);
$insert['key'] = $key;
$insert['url'] = $url;
$this->db->insert($db, $insert);
}
function keyDelete($key, $url)
{
$db = 'i_keys';
$this->db->where('url', $url);
$this->db->where('key', $key);
$this->db->delete($db);
}
Можно ли так делать для предотвращения полных дублей в базе? Чем это не очень хорошо?
+150
function rustrtolower($s)
{
$from = array("А","Б","В","Г","Д","Е","Ё","Ж","З","И","Й","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ч","Ш","Щ","Ъ","Ы","Ь","Э","Ю","Я","A","B","C","D","E","F","G","H","I","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","J");
$to = array("а","б","в","г","д","е","ё","ж","з","и","й","к","л","м","н","о","п","р","с","т","у","ф","х","ц","ч","ш","щ","ъ","ы","ь","э","ю","я","a","b","c","d","e","f","g","h","i","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","j");
return str_replace($from, $to, $s);
}
+150
$black = "eval|file_get_contents|mysql_(.*?)|include|require|readfile|show_source|highlight|import_request_variables|extract|parse_str|assert|passthru|exec|system|shell_exec|proc_open|fopen|echo";
if(preg_match("#\<\?(.*?)($black)(.*?)\?\>#i", $template)){
exit ("1");
break;
}