Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> $.ajax w jQuery
SpiJay
post
Post #1





Grupa: Zarejestrowani
Postów: 63
Pomógł: 2
Dołączył: 18.11.2009
Skąd: Grudziądz

Ostrzeżenie: (0%)
-----


Witam serdecznie,

zrobiłem takie oto filtrowanie: http://iam4u-server.home.pl/sklep/filter.php aczkolwiek nie działa to w taki sposób w jaki sobie to założyłem...
Pokazuje mi ładnie wysortowane wyniki z bazy, ale nie pamięta wszystkich wartości filtrowania, dla przykładu:

jeżeli wybiorę kolor np czerwony oraz smak np wytrawne, to wyszukuje mi wyłącznie rekordy z wartością "wytrawne", a kolor jest pomijany.
Wiem, że jest wina w skrypcie jQuery, ponieważ ręcznie wpisane wartości w skrypcie PHP działają poprawnie.

Ad1. Macie jakieś rady ?

Ad2. Ponadto chciałbym prosić o wyjaśnienie w jaki sposób wysłać wyniki sortowania z pliku function.php do pliku index.php ?

JS:
[JAVASCRIPT] pobierz, plaintext
  1. $(window).load(function() {
  2.  
  3. $(".filtr").click(function() {
  4.  
  5. var kolor = $(this).find('div.k').add('id');
  6. var smak = $(this).find('div.s').attr('id');
  7. var cena = $(this).find('div.c').attr('id');
  8. var region = $(this).find('div.r').attr('id');
  9. var kraj = $(this).find('div.p').attr('id');
  10.  
  11. $.ajax({
  12. url: 'function.php',
  13. data: {
  14. funkcja: 'szukaj',
  15. kolor: kolor,
  16. smak: smak,
  17. cena: cena,
  18. region: region,
  19. kraj: kraj,
  20. },
  21. type: 'post',
  22. success: function(output) {
  23. $('.jo').remove();
  24. $("#wyniki").append(output);
  25. return false;
  26. }
  27. });
  28. });
  29. });
[JAVASCRIPT] pobierz, plaintext


PHP:
  1. // Ajaxowe wyszukiwanie win
  2. if(isset($_POST['funkcja']) && !empty($_POST['funkcja'])) {
  3. switch($_POST['funkcja'])
  4. {
  5. case 'szukaj':
  6. szukaj($_POST['kolor'], $_POST['smak'], $_POST['cena'], $_POST['region'], $_POST['kraj']);
  7. break;
  8. }
  9. }
  10.  
  11. function szukaj($kolor, $smak, $cena, $region, $kraj) {
  12. $qwerty = "SELECT * FROM `wina` WHERE
  13. kolor LIKE '%".$kolor."%'
  14. AND smak LIKE '%".$smak."%'
  15. AND cena_handlowa LIKE '%".$cena."%'
  16. AND region LIKE '%".$region."%'
  17. AND kraj LIKE '%".$kraj."%'
  18. ORDER by id";
  19. $sql = mysql_query($qwerty);
  20. while($id = mysql_fetch_assoc($sql)) {
  21. echo '
  22. <div class="jo" style="background: #aaa; margin-bottom: 5px;">
  23. '.$id['id'].' |
  24. '.$id['nazwa'].' |
  25. '.$id['region'].' |
  26. '.$id['kraj'].' |
  27. '.$id['smak'].' |
  28. '.$id['kolor'].' |
  29. '.$id['cena_handlowa'].' |
  30. '.$id['zdj_mini'].' |
  31. '.$id['zdj_duze'].'
  32. </div>
  33. ';
  34. }
  35. }


HTML:
  1. <div id="filtr-body">
  2. <div id="filtr-kolor">
  3. <span class="filtr-name">Kolor</span>
  4. <div class="filtr"><div class="k" id="cze"><img src="images/wina-i.png" /> Czerwone</div></div>
  5. <div class="filtr"><div class="k" id="bia"><img src="images/wina-i.png" /> Białe</div></div>
  6. <div class="filtr"><div class="k" id="roz"><img src="images/wina-i.png" /> Różowe</div></div>
  7. </div>
  8. <div id="filtr-cena">
  9. <span class="filtr-name">Cena</span>
  10. <div class="filtr"><div class="c" id="1"><img src="images/wina-i.png" /> do 50zł</div></div>
  11. <div class="filtr"><div class="c" id="2"><img src="images/wina-i.png" /> 50zł - 100zł</div></div>
  12. <div class="filtr"><div class="c" id="3"><img src="images/wina-i.png" /> ponad 100zł</div></div>
  13. </div>
  14. <div id="filtr-smak">
  15. <span class="filtr-name">Smak</span>
  16. <div class="filtr"><div class="s" id="slo"><img src="images/wina-i.png" /> Słodkie</div></div>
  17. <div class="filtr"><div class="s" id="wyt"><img src="images/wina-i.png" /> Wytrawne</div></div>
  18. <div class="filtr"><div class="s" id="mus"><img src="images/wina-i.png" /> Musujące</div></div>
  19. </div>
  20. <div id="filtr-kontynent">
  21. <span class="filtr-name">Region</span>
  22. <div class="filtr ameryka"><div class="r" id="ame"><img src="images/wina-i.png" /> Ameryka</div></div>
  23. <div class="filtr europa"><div class="r" id="eur"><img src="images/wina-i.png" /> Europa</div></div>
  24. </div>
  25. <div id="filtr-panstwa">
  26. <span class="filtr-name">Kraj</span>
  27. <div class="filtr ameryka"><div class="p" id="arg"><img src="images/wina-i.png" /> Argentyna</div></div>
  28. <div class="filtr ameryka"><div class="p" id="chi"><img src="images/wina-i.png" /> Chile</div></div>
  29. <div class="filtr ameryka"><div class="p" id="bra"><img src="images/wina-i.png" /> Brazylia</div></div>
  30.  
  31. <div class="filtr europa"><div class="p" id="fra"><img src="images/wina-i.png" /> Francja</div></div>
  32. <div class="filtr europa"><div class="p" id="wlo"><img src="images/wina-i.png" /> Włochy</div></div>
  33. <div class="filtr europa"><div class="p" id="his"><img src="images/wina-i.png" /> Hiszpania</div></div>
  34. </div>
  35. <div id="filtr-result">Znaleziono wyników: <b>4178</b></div>
  36.  
  37. <div id="wyniki" style="clear: both; float: none;"></div>


Pozdrawiam !
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.09.2025 - 12:34