Преглед садржаја
Неке функције у поређењу са другим оквирима
Користите образац МВЦ (модел / приказ / контролер)За разлику од других оквира, он раздваја сваку компоненту у фасцикле ради бољег редоследа и одржавања.
- Генерисање кода: Иии може генерисати ЦРУД код из табеле базе података, стварајући упите, листе и обрасце.
- Интегрисана подршка за јКуери и Боотстрап
- Уграђене методе контроле приступа аутентификације и ауторизације улога
- Укључује систем безбедности и спречавања напада изван мреже.
- Подржава виџете и додатке које је развила заједница
- Подржава употребу шаблона за дизајн
Инсталација Иии Фрамеворк -а
Постоје две верзије Иии, једна основна и једна напредна. У основној верзији, корисничке датотеке и администраторске датотеке су заједно, у напредној верзији су одвојене у две фасцикле као независни системи Предњи крај И Бацкенд
Да бисмо инсталирали Иии 2.0, морамо преузети датотеке са веб странице Иии Фрамеворк 2.0 са следећег УРЛ -а Иии 2.0 Басиц и Иии 2.0 Адванцед.
Након преузимања отпакујемо датотеку и копирамо напредну фасциклу на наш локални сервер и преименујемо је у назив нашег веб пројекта, у овом случају то називамо ииидемо.
Затим с терминала морамо инсталирати датотеке структуре веба за ово извршавамо сљедеће:
судо пхп инитПитаће нас да ли желимо да га покренемо у режиму развоја или производње, изабраћемо развој, а затим потврдити, тако да ће бити копирана сва потребна подразумевана структура.
Бацкенд можемо видети у прегледачу са УРЛ -а:
хттп: // лоцалхост / ииидемо / бацкенд / веб /
хттп: // лоцалхост / ииидемо / фронтенд / веб /
ЕНЛАРГЕ
Затим ћемо креирати базу података од пхпмиадмина којој ћемо дати име ииидемодб.
Табела за администратора ће имати следећу структуру
- Структура табеле за табелу `администратор` - ЦРЕАТЕ ТАБЛЕ ИФ НОТ ЕКССТС` администратор` (` ид` тиниинт (3) НОТ НУЛЛ, `усер` варцхар (50) ДЕФАУЛТ НУЛЛ,` кеи` варцхар (50) ДЕФАУЛТ НУЛЛ, `емаил `варцхар (100) ДЕФАУЛТ НУЛЛ) ЕНГИНЕ = МиИСАМ АУТО_ИНЦРЕМЕНТ = 2 ЗАДЊА ЦХАРСЕТ = латин1; - - Избаци податке за табелу `администратор` - ИНСЕРТ ИНТО` администратор` (` ид`, `усер`,` пассворд`, `емаил`) ВРЕДНОСТИ (1, 'админ', 'админ', 'демо@гмаил.цом '); Затим ћемо морати да конфигуришемо повезивање базе података са Иии. За ово идемо у / цоммон / цонфиг фасциклу и отворимо датотеку маин_лоцал.пхп, овде ће бити уобичајене конфигурације и за позадину и за предњи 'иии \ дб \ Цоннецтион ',' дсн '=>' мискл: хост = лоцалхост; дбнаме = ииидемодб ',' усернаме '=>' роот ',' пассворд '=>' ',' цхарсет '=>' утф8 ',]; ?> вар13 ->Затим ћемо морати да направимо модел, контролер и поглед администратора, за то ћемо користити УРЛ: хттп: // лоцалхост / иии… индек.пхп? Р = гии
Затим идемо на Цруд генератор за креирање кода и приказа, контролера и минималних функционалности за интеракцију са табелом. ЦРУД је акроним за Креирај, Набави, Ажурирај и Избриши.
Класа модела: бацкенд \ моделс \ Администратор
Претражите класу модела: бацкенд \ моделс \ Администратор \ Администратор Сеарцх
Класа контролера: бацкенд \ цонтроллерс \ АдминистраторЦонтроллер
Затим притиснемо Превиев и Генерате
Затим можемо тестирати сировину коју генеришемо са следећег УРЛ -а
хттп: // лоцалхост / иии … р = администратор
'идентитиЦласс' => 'уобичајени \ модели \ Корисник'Мењамо се за наш модел администратора
'идентитиЦласс' => позадина \ модели \ АдминистраторУказујемо да ћемо за пријављивање на позадину користити модел администратора који се налази на наведеној путањи.
Затим идемо у заједничку фасциклу \ моделс и копирамо датотеку ЛогинФорм.пхп у позадинску фасциклу \ моделс, на овај начин одвајамо податке за пријављивање који су у заједничком облику за позадину и сучеље.
Контролер који позива пријаву је СитеЦонтроллер.пхп.пхп, морамо отворити датотеку и изменити ред:
користите заједничке \ моделс \ ЛогинФорм;На линији:
користите позадину \ моделс \ ЛогинФорм;На овај начин, када се образац пошаље, он ће тражити ЛогинФорм.пхп у бацкенд \ моделс \ Администратор како смо горе дефинисали.
Затим морамо изменити образац за пријављивање да бисмо га прилагодили моделу администратора на следећи начин:
гетУсер (); иф (! $ усер ||! $ усер-> валидатеПассворд ($ тхис-> пассворд)) {$ тхис-> аддЕррор ($ аттрибуте, 'Погрешно корисничко име или лозинка.'); }} јавна функција логин () {иф ($ тхис-> валидате ()) {ецхо 'хелло'; ретурн Иии :: $ апп-> усер-> логин ($ тхис-> гетУсер (), $ тхис-> ремемберМе? 3600 * 24 * 30: 0); } елсе {ретурн фалсе; }} // функција која тражи корисника помоћу функције заштићене корисничким именом гетУсер () {иф ($ тхис -> _ усер === нулл) {// ако постоји, добија низ са свим подацима $ тхис -> _ усер = Администратор :: финдБиУсернаме ($ тхис-> корисничко име); } врати $ тхис -> _ усер; }}?> вар13 ->Затим мењамо генерисани модел администратора и додаћемо ИдентитиИнтерфаце што је класа која пружа различите напредне безбедносне функције за контролу приступа. У овом случају наш пример је једноставан, али морамо их применити чак и ако их не користимо.
50], [['емаил'], 'стринг', 'мак' => 100]]; } // Поља табеле јавна функција аттрибутеЛабелс () {ретурн ['ид' => 'ИД', 'корисник' => 'Корисник', 'лозинка' => 'Лозинка', 'емаил' => 'Е -пошта',]; } // предефинисана функција у ИдентитиИнтерфаце за проналажење корисника по имену јавна статичка функција финдБиУсернаме ($ усернаме) {ретурн статиц :: финдОне (['усер' => $ усернаме]); } / предефинисана функција у ИдентитиИнтерфаце за тражење кључне јавне функције валидатеПассворд ($ пассворд) {ретурн статиц :: финдОне (['кеи' => $ пассворд]); } // предефинисана функција у ИдентитиИнтерфаце за проналажење корисника по ид -у јавна статичка функција финдИдентити ($ ид) {ретурн статиц :: финдОне ($ ид); } // предефинисана функција у ИдентитиИнтерфаце -у за претрагу корисника помоћу маркера или токена јавна статичка функција финдИдентитиБиАццессТокен ($ токен, $ типе = нулл) {// врати статиц :: финдОне (['аццесс_токен' => $ токен]); } // Враћа јавну функцију корисничког ИД-а гетИд () {ретурн $ тхис-> ид; } // Враћа кључ који се може користити за проверу ваљаности јавне јавне функције ИД гетАутхКеи () {// враћа $ тхис-> аутх_кеи; } // Потврђујемо кључ враћен претходном функцијом. јавна функција валидатеАутхКеи ($ аутхКеи) {// врати $ тхис-> гетАутхКеи () === $ аутхКеи; }}Затим морамо да променимо распоред у позадини \ виев \ лаиоут, отворимо датотеку маин.пхп
Тражимо редове кода:
// Мењамо назив веба Моја компанија НавБар :: бегин (['брандЛабел' => 'Моја компанија', 'брандУрл' => Иии :: $ апп-> хомеУрл, 'оптионс' => ['цласс' => 'навбар-инверсе навбар-фикед-топ',],]); 'брандЛабел' => 'Моја компанија', Прелазимо на 'брандЛабел' => 'Моја Иии демонстрација', // Ако сам пријављен, показујем везу Пријава ако (Иии :: $ апп-> корисник-> исГуест) {$ менуИтемс [] = ['лабел' => 'Пријава', 'урл' => [' / сите / логин']]; } елсе {// Ако нисам, приказаћу друге везе у менију $ менуИтемс [] = ['лабел' => 'Одјава ('. Иии :: $ апп-> усер-> идентити-> корисничко име. ' ) ',' урл '=> [' / сите / логоут '],' линкОптионс '=> [' дата-метход '=>' пост ']]; }Овде мењамо корисника
'лабел' => 'Одјава ('. Иии :: $ апп-> усер-> идентити-> усернаме. ')',Мењамо се за наше поље корисника
'лабел' => 'Одјава ('. Иии :: $ апп-> усер-> идентити-> усер. ')',Коначно се можемо пријавити:
хттп: // лоцалхост / про… мо / бацкенд / веб /
- Корисник админ
- Кључ админ
ЕНЛАРГЕ
У другом водичу ћемо видети како променити дизајн главне странице, креирати меније, повезати странице и додати функционалности. Будите пажљиви и пратите ме ако сте заинтересовани.Да ли вам се допао и помогао овај водич?Можете наградити аутора притиском на ово дугме да бисте му дали позитиван поен