Търся filter от база данни.

noxious

Registered
Здравейте.
Търся филтър като този тук, но за предпочитане да е с презареждане на страницата.

Благодаря предварително!
 
Дал си страница, а ние кое да гледаме ? Филтъра за цена, категория или кое ? Общо всичко ли ? - нищо, че даваш линк, опиши с 4-5 думи какво искаш да правиш и с какво разполагаш, така ще получиш по-добра помощ :) Също така, потърси и в google, има адски много примери и готови кодове :)

Ето цъкти тука, тука, там, тука, тука недей

:?: :idea:
 
Филтърът трябва да бъде за цена от/до, размери (XS, S, M, L, XL, XXL), цветове (червено, зелено, синьо например). Да речем нещо подобно като този price range slider тук, но търся когато избера например минималната цена на 10, да refresh-ва страницата и да изкарва данните в дадения range price,[10,300] например.
 
Ами в примерите се показват основите на това как се прави, пробвай да направиш нещо и дай код и така ще ти помогнат повече хора. Може да ползваш JqueryUi за тоя сладър за цената(от - до) :) :?:
 
Ето моя код с jquery-UI, но при промяна на някоя от стойностите (най-ниската/най-високата) не submit-ва.

HTML:
<div class="container" style="padding-top: 5%; padding-bottom: 5%;">
	<p style="text-align: center;">
		<input type="text" id="amount" readonly style="border: 0; font-weight: bold;">
	</p>

	<form class="priceRangeForm" method="post">
		<div id="slider-range" onchange="$('.priceRangeForm').submit();"></div>
	</form>
</div>

[js]<link rel="stylesheet" href="//code.jquery.com/ui/1.12.0/themes/base/jquery-ui.css" />
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
<script>
$(function() {
$("#slider-range").slider({
range: true,
min: 1,
max: 200,
values: [1, 200],
slide: function(event, ui) {
$("#amount").val(ui.values[0]+" - " +ui.values[1]);
}
});
$("#amount").val($("#slider-range").slider("values", 0)+" - "+$("#slider-range").slider("values", 1));
});
</script>[/js]
 
Просто добави маркираното в червено към js кода си :)
quote]
$("#slider-range").slider({
range: true,
min: 1,
max: 200,
values: [1, 200],
change: function (event, ui ) {
alert('submitwammmm');
$('.priceRangeForm').submit();
},

slide: function(event, ui) {
$("#amount").val(ui.values[0]+" - " +ui.values[1]);
}
});
[/quote]
 
HTML:
<div class="container" style="padding-top: 5%; padding-bottom: 5%;">
		<p style="text-align: center;">
			<input type="text" id="amount" readonly style="border: 0; font-weight: bold;" />
		</p>
		
		<div id="slider-range"></div>
		
		<form class="priceRangeForm" method="get" action="get_items.php">
			<input type="hidden" id="amount1" />
			<input type="hidden" id="amount2" />
		</form>
	</div>

[js]<script>
$(function() {
$("#slider-range").slider({
range: true,
min: 1,
max: 200,
values: [1, 200],
change: function (event, ui) {
$('.priceRangeForm').submit();
},
slide: function(event, ui) {
$("#amount").val(ui.values[0]+" - " +ui.values[1]);
$("#amount1").val(ui.values[0]);
$("#amount2").val(ui.values[1]);
}
});
$("#amount").val($("#slider-range").slider("values", 0)+" - "+$("#slider-range").slider("values", 1));
});
</script>[/js]

Понеже имам сортиране чрез сесия и странициране, как може да се впише това WHERE price BETWEEN '".$price1."' AND '".$price2."'

Линка до момента е:
http://saita.com/products.php?type=1&cat_id=1&page=1

Когато submit-не от price range-a да SELECT-ва.

PHP:
<?php
$cat_id = (int)$cat_id;
$pageid = (int)$pageid;
$type = (int)$type;

$limit = "8";

$query1 = "SELECT * FROM `products` WHERE type = '".$type."' AND categorie_id = '".$cat_id."' ORDER BY ".$sortSession."";

if(is_numeric($pageid)) {
	$pageid = $pageid-1;
	$pageid = $pageid*$limit;
	if((!$pageid) or ($pageid < "0")) {
		$pageid = "0";
	} else {
		$pageid = $pageid;
	}
} else {
	$pageid = "0";
}

$query2 = $query1." LIMIT ".$pageid.", ".$limit."";
$result = mysql_query($query2) or die(mysql_error());
$result2 = mysql_query($query1) or die(mysql_error());
$num = mysql_num_rows($result2);

if($num != NULL) {
?>
<div class="container" style="padding-top: 5%; padding-bottom: 5%;">
	<p style="text-align: center;">
		<input type="text" id="amount" readonly style="border: 0; font-weight: bold;" />
	</p>

	<form class="priceRangeForm" method="post" action="get_items.php">
			<input type="hidden" id="amount1" />
			<input type="hidden" id="amount2" />
		</form>
</div>
<?php
}
?>

... изкарването на данните
 
Направих го. Само остана default min и max да се записват според $_GET['min'] и $_GET['max'], но ще пусна нова тема. +1
 

Back
Горе