Witam kolejny raz. Chciałbym utworzyć podpowiedzi w wyszukiwarce na podstawie nazw produktów z bazy produktów. Chciałbym to zrobić za pomocą jQuery UI Autocomplete, w którym muszę podać źródło sugerowanych fraz, powinien to być plik PHP, ewentualnie XML. W związku z tym jak stworzyć plik np. search-suggestion.php, który wypisze nazwy wszystkich produktów z naszej bazy. Kombinuję z uproszczonym kodem od funckji listProducts w pliku products.php, obecnie mam coś takiego:
Ale nie mam pojęcia jak się do tego odwołać aby po wejściu np. na adresstrony.pl/folder/search-suggestions.php była wypisana lista fraz. Ze sposobem listowania tak aby to przyjął moduł jQuery autocomplete sobie poradzę, chodzi mi tylko o podpowiedź jak w dowolny sposób wypisać produkty z bazy quickcarta?
Do tego utworzyłem plik search.php w templates/default i ustawiłem jedną podstronę sklepu na ten plik. W efekcie mam utworzoną białą podstronę na której pojawia się czysty tekst:
["nazwa produktu 1", "nazwa produktu 2", "nazwa produktu 3", ]
Który już mógłby praktycznie zostać przyjęty przez skrypt jQuery UI autocomplete, ale za ostatnim produktem wstawia mi przecinek, przez który skrypt nie działa. W tym celu próbowałem w pętli for dodać funkcję if, która wstawiała by przecinki za każdym produktem oprócz ostatniego:
Problem rozwiązany, wystarczyło zmienić: if ($i < $aKeys['iEnd'] - 1)
Teraz rodzi się kolejne pytanie, a raczej chęć uproszczenia działania całości. Ponieważ teraz w tej liście pojawiają mi się nazwy produktów które zostały dopisane do podstrony odpowiedzialnej za tą listę. Chciałbym nie musieć w każdym produkcie zaznaczać tej strony, tylko aby ta lista zwracała WSZYSTKIE produkty ze sklepu, bez względu na przypisaną stronę. Wiem, że tutaj:
Skrypt pokaże produkty przypisane do danej podstrony $aData['iPage'] lub możesz przesłać tablicę ID produktów Nie chcesz pierwszego i nie masz drugiego. Musisz pobrać wszystkie produkty z pl_products.php