Архив

Архив Июнь 2016

Например при фильтре по цене от 7 до 8 с учетом скидки 3%

 AND (`price`-(`price`*3/100))>="7" AND (`price`-(`price`*3/100))<="8"
Categories: MySQL Tags:

Скрываем блок catalog_filter_item_multi_values при клике вне него. Также при открытии одного из блоков скрываем остальные. При повторном нажатии скрываем активный. При убирании мыши из области активного блока скрывать его.

$(document).click(function(event){
	if($(event.target).closest(".catalog_filter_item_multi_values").length||$(event.target).closest(".catalog_filter_item_multi_title").length)return;
	$(".catalog_filter_item_multi_values").fadeOut("slow");
	event.stopPropagation();
});
$('.catalog_filter_item_multi').hover(function(){
},function(){
	$(".catalog_filter_item_multi_values").fadeOut("slow");
});
$('.catalog_filter_item_multi_title').click(function(){
	$('.catalog_filter_item_multi_values').not($(this).next()).hide();
	$(this).next('.catalog_filter_item_multi_values').slideToggle();
});
<div class="catalog_filter_items_multi">
	<div class="catalog_filter_item_multi">
		<div class="catalog_filter_item_multi_title">Цвет</div>
		<div class="catalog_filter_item_multi_values">
			<label>бежевый <input type="checkbox" name="color[]" value="20"/><span></span></label>
			<label>белый <input type="checkbox" name="color[]" value="7"/><span></span></label>
			<label>черный <input type="checkbox" name="color[]" value="5"/><span></span></label>
		</div>
	</div>
	<div class="catalog_filter_item_multi">
		<div class="catalog_filter_item_multi_title">Материал</div>
		<div class="catalog_filter_item_multi_values">
			<label>дерево <input type="checkbox" name="mat[]" value="13"/><span></span></label>
			<label>искусственная кожа <input type="checkbox" name="mat[]" value="3"/><span></span></label>
		</div>
	</div>
	<div class="catalog_filter_item_multi">
		<div class="catalog_filter_item_multi_title">Брэнд</div>
		<div class="catalog_filter_item_multi_values">
			<label>707 <input type="checkbox" name="brand[]" value="17218"/><span></span></label>
			<label>Avenue <input type="checkbox" name="brand[]" value="17210"/><span></span></label>
		</div>
	</div>
</div>
Categories: Javascript Tags:
function get_title($url){
	$fp=file_get_contents($url);
	if(!$fp){
		return false;
	}
	$res=preg_match("/<title>(.*)<\/title>/siU",$fp,$title_matches);
	if(!$res){
		return false;
	}
	$title=preg_replace('/\s+/',' ',$title_matches[1]);
	$title=trim($title);
	return $title;
}
Categories: PHP Tags:

В случае если, $_SERVER[‘HTTP_IF_MODIFIED_SINCE’] отсутствует:
.htaccess

RewriteEngine on
RewriteRule .* - [E=HTTP_IF_MODIFIED_SINCE:%{HTTP:If-Modified-Since}]
RewriteRule .* - [E=HTTP_IF_NONE_MATCH:%{HTTP:If-None-Match}]

php:

session_cache_limiter('private_no_expire');
session_start();
Categories: Web Tags: ,

Задача: нужно выбрать строки, в которых поле начинается с выбранной буквы, не учитывая определенный набор символов в его начале — ИП, ООО и т.д.
Т.е. фильтр по алфавиту, но наименования указаны как ИП Тест или в другом любом формате.
Например, при поиске результатов, начинающихся с С должен найти ООО РЦ «Северо-Запад»
Набор неучитываемых символов задается пользователем, указывается через разделитель |:

$setting_replace='ИП|ООО|ТД|РЦ|"|«';
$part_sql='`name`';
$replaces=explode('|',$setting_replace);
foreach($replaces as $item){
	$part_sql="REPLACE(".$part_sql.",'".$item."','')";
}
$where.=" AND TRIM(".$part_sql.") LIKE '".$_GET['let']."%'";//TRIM - удаляем образовавшиеся пробелы, в нашем случае в начале

В результате поиска строк, у которых наименование начинается с «С» требуемая часть sql-запроса будет иметь вид:

 AND TRIM(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(`name`,'ИП',''),'ООО',''),'ТД',''),'РЦ',''),'"',''),'«','')) LIKE 'С%'
Categories: MySQL, PHP Tags: ,
input[type=text]::-webkit-input-placeholder{
	color:#ffffff;
}
input[type=text]::-moz-placeholder{
	color:#ffffff;
}
input[type=text]:-moz-placeholder{
	color:#ffffff;
}
input[type=text]:-ms-input-placeholder{
	color:#ffffff;
}
Categories: CSS Tags:
$(".catalog td").mouseover(function(){
	$(this).parent().find("td").css("background-color","#f2f6f7");
	tds=$(this).parent().find("td"),
	index=$.inArray(this,tds),
	sel_tds=$(".catalog td:nth-child("+(index+1)+")");
	sel_tds.css("background-color","#fff2be");
	$(this).css("background-color","#f8e9b8");
}).mouseout(function(){
	$(".catalog td").css("background-color","#ffffff");
});
Categories: Javascript Tags: