- 1
- 2
- 3
- 4
$res = GetMysqlRes("SELECT anons2 FROM {$oCfg->prefX}core WHERE id=93");
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
$to = $row[0];
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+159
$res = GetMysqlRes("SELECT anons2 FROM {$oCfg->prefX}core WHERE id=93");
while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
$to = $row[0];
}
В CMS есть поле E-Mail, куда отправлять новые заказы.
Так же есть поле anons, куда обычно пишется анонс статьи или страницы.
В данном случае для хранения мыла, была создана отдельная строка anons2, туда же записывался адрес.
P.S. Мазе привет.
+164
if( $check_referer ) {
if( $_SERVER['HTTP_REFERER'] == ''and $_REQUEST['subaction'] != 'dologin') $allow_login = true;
elseif( clean_url( $_SERVER['HTTP_REFERER'] ) == clean_url( $_SERVER['HTTP_HOST'] ) ) $allow_login = true;
}else {
$allow_login = true;
}
dle software
+160
<?php
if ($res) {
$i=0;
while ( $arr = $res->fetchRow() )
{
$id = $arr['id'];
$userid = $arr['userid'];
$alias = $arr['alias'];
$startcity = $arr['startcity'];
$endcity = $arr['endcity'];
$godate = $arr['godate'];
$gohour = $arr['gohour'];
$gorecset = mapSetToWeekdays($arr['gorecset']);
$recdays = implode(" ", $gorecset);
$godate = ereg_replace("Mon", $l['mo'], $godate);
$godate = ereg_replace("Tue", $l['tu'], $godate);
$godate = ereg_replace("Wed", $l['we'], $godate);
$godate = ereg_replace("Thu", $l['th'], $godate);
$godate = ereg_replace("Fri", $l['fr'], $godate);
$godate = ereg_replace("Sat", $l['sa'], $godate);
$godate = ereg_replace("Sun", $l['su'], $godate);
$rides[$i] = array('id' => $id,
'userid' => $userid,
'alias' => $alias,
'startcity' => $startcity,
'endcity' => $endcity,
'gohour' => $gohour,
'godate' => $godate,
'recdays' => $recdays,
);
$i++;
}
$SMARTY->assign("rides", $rides);
}
Этот чудесный пример говнокода написал один финн, с которым мне приходится работать вместе.
Как видно, он, имея 4 года опыта разработки на PHP, так и не знает про extract(), compact(), а также про возможность использовать массивы в качестве аргументов str_replace. Хотя, в данном случае можно было просто написать $rides[] = $arr;
+169
switch($type) {
case 0:
$r_type = 0;
break;
case 2:
$r_type = 2;
break;
case 1:
$r_type = 1;
break;
}
нашел в своем старом коде.
+153
function ini_size_to_bytes($value)
{
$value = trim($value);
$retval = intval($value);
switch(strtolower($value[strlen($value) - 1]))
{
case 'g':
$retval *= 1024;
/* break missing intentionally */
case 'm':
$retval *= 1024;
/* break missing intentionally */
case 'k':
$retval *= 1024;
break;
}
return $retval;
}
vBulletin 4.0.3 (лицензионка, есть согласие на публикацию)
+160
<?php
include '/system/config_bd.php'; // соединение с базой
class pagination_start {
public $page;
public $CountListPage=10;
public $sql="SELECT * FROM `news`";
public $start;
public $limit;
public $ires;
public function page_settings() {
$this->page_get();
$this->start=($this->page-1)*$this->CountListPage;
$this->limit=" LIMIT $this->start,$this->CountListPage";
$this->ires=mysql_query($this->sql.$this->limit);
}
public function page_get() {
if(empty($_GET['page'])){$this->page=1;}
else {$this->page=$_GET['page'];}
}
}
class pagination_end extends pagination_start{
public $link_interval;
public $i;
public $sp;
public function pagination($class_all,$class_once) {
$link_page = '';
$this->page_get();
$count=mysql_num_rows(mysql_query($this->sql));
if($count>$this->CountListPage){
$CountList=ceil($count/$this->CountListPage);
if($this->page > 3 && $CountList > 5){echo '<span class="'.$class_all.'"><a href="?page=1'.$this->link_interval.'">1</a></span><span class="'.$class_all.'">...</span>';}
if($this->page > 3 && $CountList > 5){$this->sp=$this->page-2;}else{$this->sp=1;}
if($this->page > $CountList-3 && $CountList > 5){$this->sp=$CountList-4; }
if($CountList>5)$cpc=5;else $cpc=$CountList;
for($this->i=$this->sp;$this->i<$this->sp+$cpc;$this->i++){
if($this->i == $this->page){ printf ('<span class="'.$class_once.'">%s</span>',$this->i); }
else{ $suit=$this->link_interval.$this->i;
$links_cent = '<span class="'.$class_all.'"><a href="?page='.$suit.'">'.$this->i.'</a></span>';
echo $links_cent; } }
$suit=$this->link_interval."?page=".$CountList."";
if($this->page<=$CountList-3 and $CountList>5){echo '<span class="'.$class_all.'">...</span> <span class="'.$class_all.'"><a href="'.$suit.'">'.$CountList.'</a></span> ';} }
}
}
$CountListPage = 5; // Сколько объектов отображать на странице # по умолчанию 10
$sql="SELECT * FROM `news` "; // SQL запрос # по умолчанию "SELECT * FROM `news`"
$class_all='page_all'; // Css класс всех страниц кроме текущей
$class_once='class_once'; // Css класс всех страниц кроме текущей
/* Формирование страниц и sql запрос */
$pagination = new pagination_start();
$pagination->CountListPage = $CountListPage;
$pagination->sql = $sql;
$pagination->page_settings();
while($ires_result=mysql_fetch_array($pagination->ires))
{
echo $ires_result['id']."<br/>";
}
/* Пагенирование */
$pagination_end = new pagination_end();
$pagination_end->CountListPage = $CountListPage;
$pagination_end->sql = $sql;
$pagination_end->pagination($class_all,$class_once); // От css клас от 2 страници до предпоследней
+37
error_log('json_upload(): called');
error_log('json_upload(): dump $_POST');
foreach(explode("\n", var_export($_POST, TRUE) ) as $val) error_log('advupload_json_upload() dump: ' . $val);
error_log('json_upload(): dump $_GET');
foreach(explode("\n", var_export($_GET, TRUE) ) as $val) error_log('advupload_json_upload() dump: ' . $val);
отладка аццкого json вызова который вызываецо с клиента для загрузке файла покускам.
думать было лень. наговнякал :)
потом tail -f /var/log/apache2/errors.log в консоли и фпирет
+160
/*
...
*/
/* Add some salt */
$sold = $settings['users']['password_salt'];
$password = $sold.$password;
/* 1. MD5 */
$password = md5($password);
/* 2. SHA1 */
$password = sha1($password);
/* 4. Base64 */
$password = base64_encode($password);
/* 5. Fatality! */
$password = sha1($password);
/* Well done! */
return $password;
Мощно
+158
<?php
class pvalidator extends validator {
public function fname($value) {
return (bool) preg_match("/^[А-Яа-яЁё]{3,16}$/iu", $value);
}
public function lname($value) {
return (bool) preg_match("/^[А-Яа-яЁё]{3,16}$/iu", $value);
}
public function tname($value) {
return (bool) preg_match("/^[А-Яа-яЁё]{3,16}$/iu", $value);
}
public function nickname($value) {
return (bool) preg_match("/^[А-Яа-яЁё \-]{3,32}$/iu", $value);
}
public function country($value) {
return (bool) preg_match("/^[А-Яа-яЁё \-]{2,32}$/iu", $value);
}
public function sity($value) {
return (bool) preg_match("/^[А-Яа-яЁё \-]{2,16}$/iu", $value);
}
public function school($value) {
return (bool) preg_match("/^[№А-Яа-яЁё 0-9\-]{2,16}$/iu", $value);
}
public function hresponse($value) {
return (bool) preg_match("/^.{0,32}$/iu", $value);
}
public function activity($value) {
return (bool) preg_match("/^.{0,32}$/iu", $value);
}
public function interest($value) {
return (bool) preg_match("/^.{0,32}$/iu", $value);
}
}
?>
Моё свежее, с утра высранное!
+158
$i=0;
foreach($info['members'] as $m_name){
$i++;
$date = date($fdate,$m_name['time']);
$block_vars['num_online'].='<a href="index.php?name=user&op=userinfo&user='.$m_name['u_id'].'">' .$m_name['u_name'].'</a>, ';
if($mcount>0)
if($i>$mcount) break;
}