- 1
- 2
- 3
- 4
- 5
reset($err_list);
//создаем все необходимые переменные
while ($var = each($err_list)) {
eval('if(!isset($_POST["'.$var['key'].'"])){$_POST["'.$var['key'].'"]="";}');
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+169
reset($err_list);
//создаем все необходимые переменные
while ($var = each($err_list)) {
eval('if(!isset($_POST["'.$var['key'].'"])){$_POST["'.$var['key'].'"]="";}');
}
...
+154
$username=strtolower($this->username);
$user=User::model()->find('LOWER(username)=?',array($username));
чтоб наверняка
http://yiiframework.ru/doc/blog/ru/prototype.auth
+162
switch($_GET['country']) {
foreach ($getActiveChildren $k=>$v){ // тут цикл который создаёт case, echo, break - но он не работает
case "$v[id]":
echo 'Любой текст';
break;}
default:
print '[{value:"",text:"Выбрать автомобиль"}]';
break;
}
Все поймём сразу что код не работает) Но удивляет пытливый ум новичка, который очень просил ему помочь, и он предлагал свои идеи, и говорил что не работает, это чудо одно из тех предложение) В конце концов бедолага разобрался сам... Но вот какое чудо он написал в итоге останется тайной =(
+161
$url = $_SERVER['REQUEST_URI'].'/';
$counter = substr_count($url, 'page=');
if($counter!=0){
preg_match('/(page=)(.*?)(\/)/', $url, $pag);
$sim_o = array('page=', '/');
$sim_z= array('','');
$pag = str_replace($sim_o, $sim_z, $pag);
$page = $pag[0];
echo $page;
}
Проверяем наличие GET и выводим его же.
+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;
}