شرح الدرس الثالث كود اجنيتر

انشاء قاعدة البيانات والتعامل معها

فى البداية لا بد ان تفتح ملف (config) داخل (codeigniter) لعمل اعدادات الاتصال بقاعدة البيانات وملف (config) موجود بالمسار التالى:

application/config/database.php

داخل ملف(database) ستجد المصفوفة التالية:

db[‘default’][‘hostname’] = “localhost”;
db[‘default’][‘username’] = “root”;
db[‘default’][‘password]=””;
db[‘default’][‘database’] = “database_name”;
db[‘default’][‘dbdriver’] = “mysql”;

حيث

-(Hostname) تمثل اسم السرفر وبما اننا نعمل على (wamp) او الاباتشى فان اسم السرفر هو (localhost)

-(Username)وهو يوزر القاعدة وال (default) الخاص بة هو (root) ويمكنك تغيرة.

-(Password)وهو باسورد القاعدة ويمكن تركة فارغ كما هو اعلى او ان تقوم بانشاء باسورد لقاعدتك.

-(Database) وهو اسم قاعدة البيانات التى تقوم بعملها فمثلا اذا كانت اسم قاعدة البيانات (cart) فتقوم باستبدال (database_name) بال (cart).

-(Dbdriver) وهو يرمز الى نوع قاعدة البيانات حيث القاعدة المستخدة هنا هى (mysql).

ثانيا عليك بتحميل كلاس(database) وذلك عن طريقتين:

1- ان تضع السطر التالى داخل (controller):

$this->load->database();

2- ان تفتح ملف (autoload) من المسار التالى:

application/config/autoload.php

وتقوم باضافة مكتبة الداتا بيس اى يصبح السطر التالى وهو رقم (55) داخل ملف (autoload) بالشكل التالى:

$autoload[‘libraries’] = array(‘database’);

والطريقة الثانية افضل وذلك لان ملف(autoload ) يجعل مكتبة الداتا بيس عامة اى يستطيع

اى (controller,Model) قمت بانشائة ان يقرء منها.

-وبعد ان تكون انشائت قاعدة البيانات وقمت بعمل الاعدادات الخاصة بها تكون بذلك قد انهيت من الاتصال بقاعدة البيانات والان فلنبدء فى جلب البيانات من القاعدة وعرضها بالموقع وعمل التعديل والحذف.

-مثال عملى على انشاء موديل وقاعدة بيانات وجلب البيانات من القاعدة الى الموقع:

قاعدة البيانات

CREATE TABLE news (
               id int(11) NOT NULL AUTO_INCREMENT,
               title varchar(128) NOT NULL,
               slug varchar(128) NOT NULL,
               text text NOT NULL,
               PRIMARY KEY (id),
               KEY slug (slug)
);

الموديل

<?php
class News extends CI_Controller {

               public function __construct()
               {
                               parent::__construct();
                               $this->load->model('news_model');
               }

               public function index()
               {
                               $query = $this->db->get('news');
                               return $query->result_array();
               }
}

View

<?php foreach ($news as $news_item): ?>

    <h2><?php echo $news_item['title'] ?></h2>
    <div id="main">
        <?php echo $news_item['text'] ?>
    </div>
    <p><a href="news/<?php echo $news_item['slug'] ?>">View article</a></p>

<?php endforeach ?>

Controller

<?php
class Cont extends CI_Controller {
                public function __construct()
               {
                               $this->load->database();
               }

               public function index()
               {
                               $this->load->model('news');
                                   $this->load->view('newsview');
               }
}
?>

وسوف يتم شرح الكود السابق بالتفصيل فى الدرس القادم.

Advertisements

ضع تعليقك هنا

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: