SQL ERROR: query=( SELECT 'common' AS book_type, pbs.book_section_id, pbs.snippet, b.id AS book_id, b.name AS book_name, b.year AS book_year, b.series AS book_series, b.link as book_link, b.litres_link, ba.id AS author_id, ba.name AS author_name, ba.link as author_link, bst.pid as pid, bs.link as section_link FROM kartaslov.phrases p JOIN kartaslov.phrase_book_section pbs ON pbs.phrase_id = p.id AND pbs.book_type = 'common' JOIN kartaslov.books b ON b.id = pbs.book_id JOIN kartaslov.book_authors ba ON ba.id = b.author_id JOIN kartaslov.book_section_text bst ON bst.id = pbs.book_section_text_id JOIN kartaslov.book_sections bs ON bs.id = bst.book_section_id WHERE p.phrase = ? LIMIT 0, 3 ) UNION ALL ( SELECT 'classic' AS book_type, pbs.book_section_id, pbs.snippet, cb.id AS book_id, cb.name AS book_name, cb.year AS book_year, cb.series AS book_series, cb.link as book_link, NULL AS litres_link, cba.id AS author_id, cba.name AS author_name, cba.link AS author_link, cbst.pid as pid, cbs.link as section_link FROM kartaslov.phrases p JOIN kartaslov.phrase_book_section pbs ON pbs.phrase_id = p.id AND pbs.book_type = 'classic' JOIN kartaslov.classic_books cb ON cb.id = pbs.book_id JOIN kartaslov.classic_book_authors cba ON cba.id = cb.author_id JOIN kartaslov.classic_book_section_text cbst ON cbst.id = pbs.book_section_text_id JOIN kartaslov.classic_book_sections cbs ON cbs.id = cbst.book_section_id WHERE p.phrase = ? LIMIT 0, 3 ); err=Unknown column 'pbs.book_section_id' in 'SELECT' SQL_ERR
CodeIgniter ir jaudīgs PHP ietvars ar ļoti mazu nospiedumu, kas paredzēts izstrādātājiem, kuriem ir nepieciešams vienkāršs un elegants rīku komplekts, lai izveidotu pilnvērtīgas tīmekļa lietojumprogrammas.
| Pozīcija | Domēns | Lapa | Darbības |
|---|---|---|---|
| 1 | codeigniter.com | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 2 | code-igniter.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 3 | ru.wikibooks.org | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 4 | blogocms.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 5 | twitter.com | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 6 | hostinfo.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 7 | phpframeworks.com | / | |
|
Pilns URL
Nosaukums
N/A
Pēdējo reizi atjaunināts
N/A
Lapas autoritāte
N/A
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 8 | max-3000.com | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 9 | net.tutsplus.com | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 10 | buzzman.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| Pozīcija | Domēns | Lapa | Darbības |
|---|---|---|---|
| 1 | code-igniter.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 2 | codeigniter.com | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 3 | ru.wikipedia.org | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 4 | codeigniter.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 5 | habrahabr.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 6 | cigniter.ru | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 7 | codeigniter.org.ru | / | |
|
Pilns URL
Nosaukums
N/A
Pēdējo reizi atjaunināts
N/A
Lapas autoritāte
N/A
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 8 | simplecoding.org | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 9 | blog.termit.name | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
| 10 | en.wikipedia.org | / | |
|
Satiksme:
N/A
Atpakaļsaites:
N/A
Sociālās akcijas:
N/A
Ielādes laiks:
N/A
Fragmenta priekšskatījums:
Nav pieejams fragments |
|||
Laipni lūdzam tīmekļa izstrādes pasaulē, kur efektivitāte un elastība ir galvenais, lai izveidotu stabilas un mērogojamas lietojumprogrammas. Šajā rakstā mēs iedziļināsimies vienā no mūsdienās populārākajām PHP ietvariem — CodeIgniter. Šīs rokasgrāmatas autors ir vietnes serpulse.com eksperti. Šī rokasgrāmata ir izstrādāta, lai sniegtu jums visaptverošu izpratni par to, kā izmantot CodeIgniter, lai izveidotu dinamiskas un augstas veiktspējas vietnes.
CodeIgniter ir atvērtā pirmkoda PHP ietvars, kas īpaši izstrādāts izstrādātājiem, kuriem ir nepieciešams vienkāršs un elegants rīku komplekts, lai izveidotu pilnvērtīgas tīmekļa lietojumprogrammas. Tā vieglais raksturs padara to par ideālu izvēli gan maza mēroga projektiem, gan lielākām uzņēmuma līmeņa lietojumprogrammām. Atšķirībā no dažiem citiem ietvariem, kas ir aprīkoti ar funkcijām, CodeIgniter ļauj izstrādātājiem pievienot tikai tiem nepieciešamos komponentus, kas palīdz uzturēt lietojumprogrammu vienkāršu un efektīvu.
Lai sāktu darbu ar CodeIgniter, vispirms no tā oficiālās vietnes ir jālejupielādē jaunākā versija. Kad esat ieguvis failus, varat tos augšupielādēt savā serverī un izpildīt dokumentācijā iekļautos iestatīšanas norādījumus. Pēc instalēšanas jūs sagaidīsit ar vienkāršu direktoriju struktūru, kas cita starpā sakārto jūsu lietojumprogrammu modeļos, skatos un kontrolleros.
Izveidosim vienkāršu lietojumprogrammu Hello World, lai parādītu, cik viegli ir strādāt ar CodeIgniter. Sāciet, izveidojot jaunu kontrolleri ar nosaukumu “Laipni lūdzam” direktorijā application/controllers/:
Šis kods definē jaunu klasi ar nosaukumu "Laipni lūdzam", kas paplašina iebūvēto CI_Controller klasi. Metode "indekss" tiek automātiski izpildīta, ja netiek pieprasīta neviena konkrēta metode, kas šajā gadījumā vienkārši izvada "Hello, world!" pārlūkprogrammā.
Pakalpojumā CodeIgniter vietrāži URL tiek kartēti tieši ar jūsu kontrolleru metodēm, izmantojot maršrutēšanas sistēmu. Pēc noklusējuma maršruti ir definēti failā application/config/routes.php. Piemēram, ja vēlaties mainīt mūsu kontroliera 'Welcome' 'index' metodes URL no '/welcome/index' uz vienkārši '/', failam routes.php varat pievienot šādu rindiņu:
Lai gan iepriekš izveidotā indeksa metode bija noderīga demonstrācijas nolūkos, reālās pasaules lietojumprogrammām bieži ir nepieciešama sarežģītāka mijiedarbība starp modeļiem, skatiem un kontrolleriem. Pārveidosim mūsu “Welcome” kontrolleri, lai izmantotu modeli un skatu, nevis tieši izvadītu tekstu.
Izveidojiet jaunu modeli ar nosaukumu 'User_model' direktorijā application/models/:
Pēc tam izveidojiet skata failu ar nosaukumu "welcome_message.php" direktorijā application/views/:
Sveiki, = $user['name']; ?>! Jūsu e-pasts ir = $user['email']; ?>.
Visbeidzot atjauniniet mūsu “Welcome” kontrolleri, lai ielādētu modeli un nodotu datus skatam:
CodeIgniter ir aprīkots ar dažādiem iebūvētiem drošības līdzekļiem, kas palīdz aizsargāt jūsu lietojumprogrammu no izplatītām ievainojamībām, piemēram, SQL injekcijas, starpvietņu skriptēšanas (XSS) un starpvietņu pieprasījuma viltošanas (CSRF). Šīs funkcijas ietver:
Viena no labākajām CodeIgniter īpašībām ir tā paplašināmība. Varat viegli paplašināt tā funkcionalitāti, izveidojot pielāgotas bibliotēkas, palīgus un spraudņus. Piemēram, ja lietojumprogrammā ir jāintegrē trešās puses API, varat izveidot pielāgotu bibliotēku, kas apstrādā visus API pieprasījumus un atbildes.
Lai programmā CodeIgniter izveidotu pielāgotu bibliotēku, vienkārši pievienojiet jaunu PHP failu direktorijam application/libraries/ un definējiet klasi, kas paplašina CI_Controller klasi. Tālāk ir sniegts piemērs, kā izveidot pielāgotu bibliotēku ar nosaukumu My_custom_library:
Kad esat izveidojis savu pielāgoto bibliotēku, varat to ielādēt jebkurā kontrollerī, izmantojot metodi $this->load->library():
Šajā rakstā mēs esam izpētījuši pamatus darbam ar CodeIgniter, tostarp instalēšanu, maršrutēšanu, modeļus, skatus, drošības līdzekļus un pielāgošanas iespējas. Tagad jums vajadzētu labi saprast, kā izmantot šo jaudīgo PHP ietvaru, lai efektīvi izveidotu dinamiskas tīmekļa lietojumprogrammas.
Neatkarīgi no tā, vai esat pieredzējis izstrādātājs vai tikko sākat darbu, CodeIgniter ir lieliska izvēle ikvienam, kas vēlas racionalizēt savu tīmekļa izstrādes procesu. Tā vieglais raksturs, vienkāršība un elastība padara to par piemērotu risinājumu gan maza mēroga projektiem, gan liela mēroga uzņēmuma lietojumprogrammām.
Ko jūs gaidāt? Sāciet veidot pārsteidzošas tīmekļa lietojumprogrammas jau šodien, izmantojot CodeIgniter!
Piezīme. Šajā rokasgrāmatā ir sniegts pamata ievads par CodeIgniter. Lai uzzinātu vairāk par sarežģītām tēmām, piemēram, datu bāzes integrāciju, veidlapu apstrādi un sesiju pārvaldību, noteikti skatiet oficiālo CodeIgniter lietotāja rokasgrāmatu.