- 1
- 2
- 3
- 4
- 5
if (mysql_num_rows(mysql_query("SELECT * FROM `usermail` WHERE `email` LIKE '%".$_POST['email']."%' "))) {
# email уже есть
} else {
# новый email
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+66
if (mysql_num_rows(mysql_query("SELECT * FROM `usermail` WHERE `email` LIKE '%".$_POST['email']."%' "))) {
# email уже есть
} else {
# новый email
}
Проверка на наличие email в таблице. Через SELECT * и LIKE !!!
+66
/**
*
* check for collection object
* @access public
* @param string $session_path
* @param string $session_name
* @return boolean
*/
public function open($session_path, $session_name)
{
$result = false;
if ($this->__mongo_collection != NULL)
{
$result = false;
}
return $result;
}
Недавно искал класс для хранения сессий в базе данных и нашел его тут
http://www.phpclasses.org/browse/file/34711.html (для тех кто не видит смотрим тут http://pastebin.com/xuQav8nD)
При внимательном просмотре нашел этот кусок кода :)
+142
<?php
switch(1==1) {
case true;
// ...
break;
case false;
// ...
break;
}
?>
Аналог конструкции if-else...
+65
$needDied = $this->battle_data['type'] == 104 ? true : false;
+153
<ul class="menu">
<li class="leaf first">
<a href="http://example.com/app1?operator=<!--{cke_protected}
<?php echo($user->profile_crm_name); ?>
-->" target="_blank">Заявка №1</a>
</li>
<li class="leaf">
<a href="http://example.com/app2?operator=<!--{cke_protected}
<?php echo($user->profile_crm_name); ?>
-->" target="_blank">Заявка №2</a>
</li>
<!-- ... еще десяток ... -->
</ul>
Drupal, приложение для колл-центра, пользовательский блок со списком ссылок. {cke_protected} - защита от WYSIWYG-редактора.
Спасибо, что хоть без SQL
+56
<?php
define(STATIC_SALT, "herz_salt");
function generateRandChar()
{
$chars = 'abdefhiknrstyzABDEFGHKNQRSTYZ23456789';
$numChars = strlen($chars);
$string = '';
for ($i = 0; $i < rand(1, 7); $i++)
{
$string .= substr($chars, rand(1, $numChars) - 1, 1);
}
return $string;
}
$time = microtime(true) / 10000;
$str = $time - floor($time);
$str = (string)$str;
$str = preg_replace('/0./', '', $str);
$deleteNum = strlen($str);
if($deleteNum <= 5)
{
$str = substr($str, rand(0, 4));
}
elseif($deleteNum > 5 && $deleteNum <= 10)
{
$str = substr($str, rand(5, 9));
}
else $str = substr($str, rand(7, 9));
if(strlen($str) == 0)
{
$str = rand(0, 15000);
}
sleep(5);
$str = sha1(md5($str . STATIC_SALT . microtime(true))) . generateRandChar();
echo $str;
?>
паранойя в действии :)
+50
// $conn - mysqli_object
$query = "insert into orders values
('0', '".$customerid."', '".$_SESSION['total_price']."',
'".$date."', '".PARTIAL."', '".$ship_name."',
'".$ship_address."', '".$ship_city."',
'".$ship_state."', '".$ship_zip."',
'".$ship_phone."', '".$ship_mail."')";
$result = $conn->query($query) ;
if (!$result) {
return false;
}
//amount - float
$query = "select orderid from orders where
customerid = '".$customerid."' and
amount > (".$_SESSION['total_price']."-.001) and
amount < (".$_SESSION['total_price']."+.001) and
date = '".$date."' and
order_status = 'PARTIAL' and
ship_name = '".$ship_name."' and
ship_address = '".$ship_address."' and
ship_city = '".$ship_city."' and
ship_state = '".$ship_state."' and
ship_zip = '".$ship_zip."' and
ship_country = '".$ship_country."'";
$result = $conn->query($query);
if ($result->num_rows > 0) {
$order = $result->fetch_object();
$orderid = $order->orderid;
} else {
return false;
}
Источник: Люк Веллинг и Лора Томсон: Разработка веб-приложений с помощью PHP и MySQL(4 издание стр 594)
Как выдрать last_insert_id? Очень просто: нужно составить запрос на select вставленного orderid с указанием всех вставленных значений в поля, а для флоата указать на всякий случай интервал, и только тогда можно из выборки извлечь вставленный id
ps: констатна PARTIAL нигде не задаётся=)
+64
$res = mysql_query(...);
if($res == 'true'){
.....
}
Может кому то покажутся знакомы эти строки, но те, кто не знают Е. Попова могут над ним поржать.
+67
<?if($metaid == 16 || $metaid == 44 || $metaid == 52 || $metaid == 60 || $metaid == 90 ||
$metaid == 132 || $metaid == 136 || $metaid == 174 || $metaid == 192 || $metaid == 196 ||
$metaid == 238 || $metaid == 388 || $metaid == 462 || $metaid == 470 || $metaid == 480 ||
$metaid == 500 || $metaid == 530 || $metaid == 533 || $metaid == 548 || $metaid == 580 ||
$metaid == 584 || $metaid == 662 || $metaid == 666 || $metaid == 678 || $metaid == 690 ||
$metaid == 772 || $metaid == 780 || $metaid == 833){?>на<?} else if($metaid == 250 ||
$metaid == 254 || $metaid == 258 || $metaid == 704){?>во<?}else{?>в<?}?>
Одно из пятнадцати подобных условий в файле. Было написано в одну строку, поэтому тело условия увидели не сразу. Разнес по строкам для удобства чтения.
+57
// Сортируем по дате {
foreach ($arfiles as $key => $value)
{
$data = file_get_contents($fullcatpage.$arfiles[$key]);
$pubdata_text = articlesparam('pubdate',$data);
$arfiles[$key] = $pubdata_text . '-' . $value;
}
sort($arfiles);
foreach ($arfiles as $key => $value)
{
$arfiles[$key] = substr($value, 11);
}
// }
1. прикрутить префикс
2. отсортировать
3. открутить префикс