ПредишенСледващото

В предишния урок, който научих как да се съберат данни за клиента и да ги изпращате до сървъра. Сървърът мъниче писано в мястото, където стоките трябва да се върне, филтриран от параметрите си. Сега ние се отървете от угарката и пишат няколко техники и изисквания, които са извлечени от основата на правилните продукти и да ги върне на клиента. Урокът е достатъчно кратък. Първи стъпки

Какво ще правим?

Ние трябва да направим всички 3 точки:
  • 1. Вземете данните от клиента и ги обработват под нуждите на сървъра. Например, остави настройките по подразбиране
  • 2. Напиши в действителност, в самия код за извличане на елементи от базата данни. На първо място, SQL-подготовка на поръчка
  • 3. Възстановяване на данни за клиента

Получаване на данни на клиента

Може да попитате защо трябва да се разпредели тази проста операция поотделно, ако всички данни, ние можем лесно да се изтеглят от масив $ _GET на?

На първо място, за да се остави стойности. Вие не може да се позовава на факта, че клиентът се грижи за него.

На второ място, не всички данни са в $ _GET в използваема форма. Например, за сортиране на клиента е удобно да се мине един параметър във форма pole_napravlenie на, например, price_asc. Но в SQL-заявката е отделна единица, така че те трябва да бъдат предварително третирани.

Подобна е ситуацията и с марките. На клиента, ние му изпращаме под формата на масив от марки и PHP ги получава, също като масив. Но за низ SQL-заявка е необходимо - списък марки, разделени със запетая. Ето защо, марки също трябва да бъдат обработени.

Така че, пишете функция getOptions (), който извлича данни от $ _GET и ги превръща в удобен вид на нас. Почти всички на входа, което вече казах, така че аз гледам на готовия код.

Тогава ние се превърне масива на марки в aydishnikov линия, разделени със запетая. В тази форма на марките, които се използват в заявката към базата данни.

Сортиране конвертирате по различен начин. Отделно от това, извадете полето за сортиране и параметъра: възходящо или низходящо.

Имайте предвид, че във всички случаи, ние не забравяйте да замени стойност по подразбиране, ако желаната опция не е пристигнал от клиента. И сега, когато всички данни, се превръща, остава само да ги върнем от функцията в асоциативен масив, през масива за връщане (.)

Подготовка на данни SQL-заявките и екстракт от базата данни

Всички данни се приготвя в необходимата форма, а сега пишем запитването и да я изпълни. Тази функция ще се занимава getGoods (опции $, $ Кънектикът). Параметрите, които получава опции $ - данни, подготвени от предишното функция, както и $ вр - обект на свързването към базата данни, която сте създали в предишния урок. Нашата задача - да напише SQL-заявка. тя изглежда в общи линии, както следва:

Връщаме се на продуктите на клиента

Това е най-простият част на урока. Нека да погледнем на корицата, написана в предишния урок.

Замяна на този код

Добавихме няколко реда: getOptions функция на извлечените данни в променливи опции $. Тогава ние го използва, за да се получи getGoods стоки, резултатите се съхраняват в $ стоки. И разширен отговор на клиента. данни на параметрите преименувани опции и се върнаха при него не съдържанието на $ _GET, и вече се превръщат стойности. И в стоките се връща параметър масив от получените стоки.

В този урок свърши. Докато ние не може да използва данните на клиента, да ги направи в браузъра - ще ти покажем в следващия урок. Но ние винаги може да се отвори конзолата, мушкам бутони и отметки и се уверете, че сървърът ни връща към правилните продукти.

Ние проверяваме резултатите

Сега сложи минимална цена от 20 хиляди и промените сортирането да намалят цените

Филтрите в онлайн магазина
Както може да се види, че сега е само 2 стоки - по един Samsung изхвърляне вследствие неподходящо филтър по цена 17000. И нареди продукти вече са на противното. Ако сте направили всичко правилно, ще видите точно едно и също изображение.
Филтрите в онлайн магазина

Можете дори да си играе с конзолата и да се гарантира, че данните се връща правилно. В крайна сметка, най-важното нещо - това е да се постигне правилната работа на филтъра, върнете правилният списък на стоки. Scatter данните на страницата, като се вземат предвид вече завършено оформление - това изглежда много интересно, но от гледна точка на развитието е съвсем проста. Но аз няма да напреднат на себе си - повече подробности в следващия урок.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!