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 je moćan PHP okvir s vrlo malom površinom, napravljen za programere koji trebaju jednostavan i elegantan alat za izradu potpunih web aplikacija.
| Položaj | Domena | Stranica | Radnje |
|---|---|---|---|
| 1 | codeigniter.com | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 2 | code-igniter.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 3 | ru.wikibooks.org | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 4 | blogocms.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 5 | twitter.com | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 6 | hostinfo.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 7 | phpframeworks.com | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 8 | max-3000.com | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 9 | net.tutsplus.com | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 10 | buzzman.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| Položaj | Domena | Stranica | Radnje |
|---|---|---|---|
| 1 | code-igniter.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 2 | codeigniter.com | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 3 | ru.wikipedia.org | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 4 | codeigniter.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 5 | habrahabr.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 6 | cigniter.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 7 | codeigniter.org.ru | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 8 | simplecoding.org | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 9 | blog.termit.name | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
| 10 | en.wikipedia.org | / | |
|
Promet:
N/A
Povratne veze:
N/A
Dionice na društvenim mrežama:
N/A
Vrijeme učitavanja:
N/A
Pregled isječka:
Nema dostupnog isječka |
|||
Dobro došli u svijet web razvoja gdje su učinkovitost i fleksibilnost ključni za izgradnju robusnih i skalabilnih aplikacija. U ovom ćemo članku zaroniti duboko u jedan od najpopularnijih PHP okvira dostupnih danas—CodeIgniter. Autori ovog vodiča su stručnjaci na serpulse.com, a osmišljen je kako bi vam pružio sveobuhvatno razumijevanje kako iskoristiti CodeIgniter za stvaranje dinamičnih web stranica visokih performansi.
CodeIgniter je PHP okvir otvorenog koda napravljen posebno za programere koji trebaju jednostavan i elegantan alat za izradu web aplikacija sa svim značajkama. Njegova lagana priroda čini ga idealnim izborom i za male projekte i za veće aplikacije na razini poduzeća. Za razliku od nekih drugih okvira koji dolaze prepuni značajki, CodeIgniter omogućuje programerima da dodaju samo one komponente koje su im potrebne, što pomaže u održavanju vitke i učinkovite aplikacije.
Da biste započeli s CodeIgniterom, prvo trebate preuzeti najnoviju verziju s njihove službene web stranice. Kada imate datoteke, možete ih učitati na svoj poslužitelj i slijediti upute za postavljanje uključene u dokumentaciju. Nakon instalacije, dočekat će vas jednostavna struktura direktorija koja organizira vašu aplikaciju u modele, prikaze i kontrolere, između ostalog.
Napravimo jednostavnu aplikaciju "Hello World" da ilustriramo kako je lako raditi s CodeIgniterom. Započnite stvaranjem novog kontrolera pod nazivom 'Dobrodošli' unutar direktorija application/controllers/:
<šifra>
Ovaj kod definira novu klasu pod nazivom 'Dobrodošli' koja proširuje ugrađenu klasu CI_Controller. Metoda 'index' automatski se izvršava kada se ne traži nikakva specifična metoda, koja u ovom slučaju jednostavno ispisuje "Hello, world!" u preglednik.
U CodeIgniteru, URL-ovi se preslikavaju izravno na metode u vašim kontrolerima putem sustava usmjeravanja. Prema zadanim postavkama rute su definirane u datoteci application/config/routes.php. Na primjer, ako želite promijeniti URL za 'index' metodu našeg kontrolera 'Dobrodošli' iz '/welcome/index' u jednostavno '/', možete dodati sljedeći red u datoteku routes.php:
<šifra> $route['default_controller'] = 'dobrodošli/indeks';
Dok je metoda 'indeksa' koju smo ranije stvorili bila korisna u svrhe demonstracije, aplikacije u stvarnom svijetu često zahtijevaju složenije interakcije između modela, prikaza i kontrolera. Modificirajmo naš kontroler 'Dobrodošli' da koristi model i prikaz umjesto izravnog ispisivanja teksta.
Stvorite novi model pod nazivom 'User_model' u direktoriju application/models/:
<šifra>
'John Doe', 'email' => 'john.doe@example.com'];
}
}
Zatim, kreirajte datoteku prikaza pod nazivom 'welcome_message.php' u direktoriju application/views/:
<šifra>Stranica dobrodošlice Pozdrav, = $user['name']; ?>! Vaša adresa e-pošte je = $user['email']; ?>.
Na kraju, ažurirajte naš kontroler 'Dobrodošli' za učitavanje modela i prosljeđivanje podataka u prikaz:
<šifra>
load->model('Korisnički_model');
$data['user'] = $this->User_model->get_user(1);
$this->load->view('welcome_message', $data);
}
}
CodeIgniter dolazi s nizom ugrađenih sigurnosnih značajki koje pomažu u zaštiti vaše aplikacije od uobičajenih ranjivosti kao što su SQL injection, cross-site scripting (XSS) i cross-site request krivotvorenje (CSRF). Ove značajke uključuju:
Jedna od najboljih stvari kod CodeIgnitera je njegova proširivost. Jednostavno možete proširiti njegovu funkcionalnost stvaranjem prilagođenih biblioteka, pomoćnika i dodataka. Na primjer, ako trebate integrirati API treće strane u svoju aplikaciju, možete stvoriti prilagođenu biblioteku koja obrađuje sve API zahtjeve i odgovore.
Da biste stvorili prilagođenu biblioteku u CodeIgniteru, jednostavno dodajte novu PHP datoteku u direktorij application/libraries/ i definirajte klasu koja proširuje klasu CI_Controller. Evo primjera kako možete stvoriti prilagođenu biblioteku pod nazivom 'My_custom_library':
<šifra>
CI =& get_instance();
}
javna funkcija do_something()
{
// Vaš prilagođeni kod ovdje
}
}
Nakon što stvorite svoju prilagođenu biblioteku, možete je učitati u bilo koji upravljač pomoću metode $this->load->library():
<šifra>
load->library('my_custom_library');
$this->my_custom_library->do_something();
}
}
U ovom smo članku istražili osnove rada s CodeIgniterom, uključujući instalaciju, usmjeravanje, modele, prikaze, sigurnosne značajke i mogućnosti prilagodbe. Do sada biste već trebali dobro razumjeti kako koristiti ovaj moćni PHP okvir za učinkovitu izgradnju dinamičkih web aplikacija.
Bez obzira jeste li iskusni programer ili tek počinjete, CodeIgniter je izvrstan izbor za svakoga tko želi pojednostaviti svoj proces web-razvoja. Njegova lagana priroda, jednostavnost i fleksibilnost čine ga idealnim rješenjem i za male projekte i za velike poslovne aplikacije.
Pa što čekate? Počnite s izradom nevjerojatnih web aplikacija već danas uz CodeIgniter!
Napomena: Ovaj vodič daje osnovni uvod u CodeIgniter. Za naprednije teme kao što su integracija baze podataka, rukovanje obrascima i upravljanje sesijom, svakako pogledajte službeni Korisnički vodič za CodeIgniter.