Site d'annonces ب codeigniter الجزء الثالت

imadbelasri Codeigniter
CO

فهاد الجزء الثالت من Site d'annonces ب codeigniter غادي نكملو الملفات الخاصين ب les annonces غادي نشوفوا كيفاش نعرضوا les annonces بل catégorie ول ville وغادي نشوفوا كيفاش نعرضوا المعلومات الخاصة ب annonce اختارها المستخدم وأيضا les annonces لي بحث عليهم المستخدم.


نظرة سريعة بالفيديو


1- الملف ads/by-category.php

دائما ف ads كنزيد ملف جديد سميه by-category.php لي فيه كنعرض les annonces selon la catégorie ولي كيجيوني من ل  fonction category ديال controller Ads.php وهنا كنخدم ب foreach باش كنعرض المعلومات الكود ديال الملف هو :

                                                    
                                                        <?php $this->load->view('layouts/header');?>
<div class="container">
    <div class="jumbotron">
        <div class="row">
            <form action="<?php echo base_url();?>ads/find" method="post">
                <div class="col-md-3">
                    <input type="text" name="search" placeholder="Que Cherchez Vous?" class="form-control">
                </div>
                <div class="col-md-4">
                    <select  name="cat" class="form-control">
                        <option selected disabled>Veuillez choisir une catégorie</option>
                        <option value="Informatique & Téchnologie">Informatique</option>
                        <option value="Immobilier">Immobilier</option>
                        <option value="Emplois">Emplois</option>
                        <option value="Animaux">Animaux</option>
                        <option value="Vente Divers">Vente Divers</option>
                        <option value="Véhicules">Véhicules</option>
                    </select>
                </div>
                <div class="col-md-4">
                    <select  name="city" class="form-control">
                        <option selected disabled>Veuillez choisir une ville</option>
                        <option value="Casablanca">Casablanca</option>
                        <option value="Rabat">Rabat</option>
                        <option value="Fes">Fes</option>
                        <option value="Taza">Taza</option>
                        <option value="Agadir">Agadir</option>
                        <option value="Tanger">Tanger</option>
                        <option value="Oujda">Oujda</option>
                        <option value="Meknés">Meknés</option>
                    </select>
                </div>
                <div class="col-md-1">
                    <button type="submit" name="submit" class="btn btn-success"><i class="fa fa-search"></i></button>
                </div>
            </form>
        </div>
    </div>
    <div class="row">
        <div class="col-md-8">
            <div class="panel">
                <h3 class="text-default" style="padding:10px;">
                    <?php 
                      if($this->uri->segment(3) == "V%C3%A9hicules"){
                          echo str_replace('%C3%A9','é',$this->uri->segment(3));
                      }else if($this->uri->segment(3) == "Vente%20Divers"){
                          echo str_replace('%20',' ',$this->uri->segment(3));
                      }else{
                          echo $this->uri->segment(3);
                      }
                    ?> 
                <span class="badge"> <?php echo count($annonces);?></span></h3>
                <hr>
                <div class="row" style="padding:10px;">
                <?php foreach($annonces as $annonce):?>
                    <div class="media">
                        <div class="media-left">
                            <a href="#">
                               <img class="media-object thumbnail" width="237" src="<?php  echo base_url();?>/assets/uploads/<?php echo $annonce->image;?>" height="150" alt="...">
                            </a>
                        </div>
                        <div class="media-body">
                            <h4 class="media-heading"><?php echo $annonce->title;?></h4>
                            <p><?php echo $annonce->body;?></p>
                            <p><a href="<?php echo base_url();?>ads/view/<?php echo $annonce->id;?>" class="btn btn-link">Voir <i class="fa fa-arrow-right"></i></a></p>
                        </div>
                        <div class="media-footer" align="right">
                            <span class="label label-success"><i class="fa fa-tag"></i><?php echo $annonce->category;?></span>
                            <span class="label label-default"><i class="fa fa-user"></i> Belasri imad</span>
                            <span class="label label-warning"><i class="fa fa-calendar"></i> <?php echo $annonce->created;?></span>
                        </div>
                    </div>
                    <hr>
                <?php endforeach;?>
                </div>
            </div>
        </div>
        <div class="col-md-4">
            <h3 class="text-default">Choisissez une ville</h3>
            <hr>
            <ul class="list-group">
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Casablanca" class="text-info"><i class="fa fa-chevron-right"></i> Casablanca</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Rabat" class="text-info"><i class="fa fa-chevron-right"></i> Rabat</a></li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Fes" class="text-info"><i class="fa fa-chevron-right"></i> Fes</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Méknes" class="text-info"><i class="fa fa-chevron-right"></i> Méknes</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Tanger" class="text-info"><i class="fa fa-chevron-right"></i> Tanger</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Taza" class="text-info"><i class="fa fa-chevron-right"></i> Taza</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Oujda" class="text-info"><i class="fa fa-chevron-right"></i> Oujda</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Agadir" class="text-info"><i class="fa fa-chevron-right"></i> Agadir</a>
                </li>
            </ul>
        </div>
    </div>
</div>
<?php $this->load->view('layouts/footer');?>
                                                    
                                                

2- الملف ads/by-city.php

دائما ف ads كنزيد ملف جديد سميه by-city.php لي فيه كنعرض les annonces selon la ville ولي كيجيوني من ل  fonction city ديال controller Ads.php وهنا كنخدم ب foreach باش كنعرض المعلومات الكود ديال الملف هو :

                                                        
                                                            <?php $this->load->view('layouts/header');?>
<div class="container">
    <div class="jumbotron">
        <div class="row">
            <form action="<?php echo base_url();?>ads/find" method="post">
                <div class="col-md-3">
                    <input type="text" name="search" placeholder="Que Cherchez Vous?" class="form-control">
                </div>
                <div class="col-md-4">
                    <select  name="cat" class="form-control">
                        <option selected disabled>Veuillez choisir une catégorie</option>
                        <option value="Informatique & Téchnologie">Informatique</option>
                        <option value="Immobilier">Immobilier</option>
                        <option value="Emplois">Emplois</option>
                        <option value="Animaux">Animaux</option>
                        <option value="Vente Divers">Vente Divers</option>
                        <option value="Véhicules">Véhicules</option>
                    </select>
                </div>
                <div class="col-md-4">
                    <select  name="city" class="form-control">
                        <option selected disabled>Veuillez choisir une ville</option>
                        <option value="Casablanca">Casablanca</option>
                        <option value="Rabat">Rabat</option>
                        <option value="Fes">Fes</option>
                        <option value="Taza">Taza</option>
                        <option value="Agadir">Agadir</option>
                        <option value="Tanger">Tanger</option>
                        <option value="Oujda">Oujda</option>
                        <option value="Meknés">Meknés</option>
                    </select>
                </div>
                <div class="col-md-1">
                    <button type="submit" name="submit" class="btn btn-success"><i class="fa fa-search"></i></button>
                </div>
            </form>
        </div>
    </div>
    <div class="row">
        <div class="col-md-8">
            <div class="panel">
                <h3 class="text-default" style="padding:10px;">
                    <?php 
                      if($this->uri->segment(3) == "M%C3%A9knes"){
                          echo str_replace('%C3%A9','é',$this->uri->segment(3));
                      }else{
                          echo $this->uri->segment(3);
                      }
                    ?> 
                <span class="badge"> <?php echo count($annonces);?></span></h3>
                <hr>
                <div class="row" style="padding:10px;">
                <?php foreach($annonces as $annonce):?>
                    <div class="media">
                        <div class="media-left">
                            <a href="#">
                               <img class="media-object thumbnail" width="237" src="<?php  echo base_url();?>/assets/uploads/<?php echo $annonce->image;?>" height="150" alt="...">
                            </a>
                        </div>
                        <div class="media-body">
                            <h4 class="media-heading"><?php echo $annonce->title;?></h4>
                            <p><?php echo $annonce->body;?></p>
                            <p><a href="<?php echo base_url();?>ads/view/<?php echo $annonce->id;?>" class="btn btn-link">Voir <i class="fa fa-arrow-right"></i></a></p>
                        </div>
                        <div class="media-footer" align="right">
                            <span class="label label-success"><i class="fa fa-tag"></i><?php echo $annonce->category;?></span>
                            <span class="label label-default"><i class="fa fa-user"></i> Belasri imad</span>
                            <span class="label label-warning"><i class="fa fa-calendar"></i> <?php echo $annonce->created;?></span>
                        </div>
                    </div>
                    <hr>
                <?php endforeach;?>
                </div>
            </div>
        </div>
        <div class="col-md-4">
            <h3 class="text-default">Choisissez une ville</h3>
            <hr>
            <ul class="list-group">
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Casablanca" class="text-info"><i class="fa fa-chevron-right"></i> Casablanca</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Rabat" class="text-info"><i class="fa fa-chevron-right"></i> Rabat</a></li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Fes" class="text-info"><i class="fa fa-chevron-right"></i> Fes</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Méknes" class="text-info"><i class="fa fa-chevron-right"></i> Méknes</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Tanger" class="text-info"><i class="fa fa-chevron-right"></i> Tanger</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Taza" class="text-info"><i class="fa fa-chevron-right"></i> Taza</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Oujda" class="text-info"><i class="fa fa-chevron-right"></i> Oujda</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Agadir" class="text-info"><i class="fa fa-chevron-right"></i> Agadir</a>
                </li>
            </ul>
        </div>
    </div>
</div>
<?php $this->load->view('layouts/footer');?>
                                                        
                                                    

3- الملف ads/search-ad.php

دائما ف ads كنزيد ملف جديد سميه search-ad لي فيه كنعرض les annonces لي بحث عليهم المستخدم ولي كيجيوني من ل  fonction find ديال controller Ads.php وهنا كنخدم ب foreach باش كنعرض المعلومات الكود ديال الملف هو :

                                                        
                                                            <?php $this->load->view('layouts/header');?>
<div class="container">
    <div class="jumbotron">
        <div class="row">
        <form action="<?php echo base_url();?>ads/find" method="post">
            <div class="col-md-3">
                <input type="text" name="search" placeholder="Que Cherchez Vous?" class="form-control">
            </div>
            <div class="col-md-4">
                <select  name="cat" class="form-control">
                    <option selected disabled>Veuillez choisir une catégorie</option>
                    <option value="Informatique & Téchnologie">Informatique</option>
                    <option value="Immobilier">Immobilier</option>
                    <option value="Emplois">Emplois</option>
                    <option value="Animaux">Animaux</option>
                    <option value="Vente Divers">Vente Divers</option>
                    <option value="Véhicules">Véhicules</option>
                </select>
            </div>
            <div class="col-md-4">
                <select  name="city" class="form-control">
                    <option selected disabled>Veuillez choisir une ville</option>
                    <option value="Casablanca">Casablanca</option>
                    <option value="Rabat">Rabat</option>
                    <option value="Fes">Fes</option>
                    <option value="Taza">Taza</option>
                    <option value="Agadir">Agadir</option>
                    <option value="Tanger">Tanger</option>
                    <option value="Oujda">Oujda</option>
                    <option value="Meknés">Meknés</option>
                </select>
            </div>
            <div class="col-md-1">
                <button type="submit" name="submit" class="btn btn-success"><i class="fa fa-search"></i></button>
            </div>
        </form>
        </div>
    </div>
    <div class="row">
        <div class="col-md-8">
            <div class="panel">
                <h3 class="text-default" style="padding:10px;">Annonces Trouvées <span class="badge"><?php echo count($annonces);?></span></h3>
                <hr>
                <div class="row" style="padding:10px;">
                    <?php foreach($annonces as $annonce):?>
                        <div class="col-sm-12">
                            <div class="media">
                                <div class="media-left">
                                    <a href="<?php echo base_url();?>ads/view/<?php echo $annonce->id;?>">
                                        <img class="media-object thumbnail" width="237" src="<?php  echo base_url();?>/assets/uploads/<?php echo $annonce->image;?>" height="150" alt="...">
                                    </a>
                                </div>
                                <div class="media-body">
                                    <h4 class="media-heading"><?php echo $annonce->title;?></h4>
                                    <p><?php echo $annonce->body;?></p>
                                    <p><a href="<?php echo base_url();?>ads/view/<?php echo $annonce->id;?>" class="btn btn-link">Voir <i class="fa fa-arrow-right"></i></a></p>
                                </div>
                                <div class="media-footer" align="right">
                                    <span class="label label-success"><i class="fa fa-tag"></i><?php echo $annonce->category;?></span>
                                    <span class="label label-default"><i class="fa fa-user"></i> Belasri imad</span>
                                    <span class="label label-warning"><i class="fa fa-calendar"></i> <?php echo $annonce->created;?></span>
                                </div>
                            </div>
                            <hr>
                        </div>
                    <?php endforeach;?>
                </div>
            </div>
        </div>
        <div class="col-md-4">
            <h3 class="text-default">Choisissez une ville</h3>
            <hr>
            <ul class="list-group">
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Casablanca" class="text-info"><i class="fa fa-chevron-right"></i> Casablanca</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Rabat" class="text-info"><i class="fa fa-chevron-right"></i> Rabat</a></li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Fes" class="text-info"><i class="fa fa-chevron-right"></i> Fes</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Méknes" class="text-info"><i class="fa fa-chevron-right"></i> Méknes</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Tanger" class="text-info"><i class="fa fa-chevron-right"></i> Tanger</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Taza" class="text-info"><i class="fa fa-chevron-right"></i> Taza</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Oujda" class="text-info"><i class="fa fa-chevron-right"></i> Oujda</a>
                </li>
                <li class="list-group-item">
                    <a href="<?php echo base_url();?>ads/city/Agadir" class="text-info"><i class="fa fa-chevron-right"></i> Agadir</a>
                </li>
            </ul>
        </div>
    </div>
</div>
<?php $this->load->view('layouts/footer');?>
                                                        
                                                    

4- الملف ads/view.php

دائما ف ads كنزيد ملف جديد سميه view.php لي فيه كنعرض المعلومات الخاصة ب annonce اختارها المستخدم مع المعلومات الخاصة ديال المعلن وأيضا كنعرض l'annonce suivante و précédente الكود ديال الملف هو :

                                                        
                                                            <?php $this->load->view('layouts/header');?>
<div class="container">
    <div class="jumbotron">
        <div class="row">
            <form action="<?php echo base_url();?>ads/find" method="post">
                <div class="col-md-3">
                    <input type="text" name="search" placeholder="Que Cherchez Vous?" class="form-control">
                </div>
                <div class="col-md-4">
                    <select  name="cat" class="form-control">
                        <option selected disabled>Veuillez choisir une catégorie</option>
                        <option value="Informatique & Téchnologie">Informatique</option>
                        <option value="Immobilier">Immobilier</option>
                        <option value="Emplois">Emplois</option>
                        <option value="Animaux">Animaux</option>
                        <option value="Vente Divers">Vente Divers</option>
                        <option value="Véhicules">Véhicules</option>
                    </select>
                </div>
                <div class="col-md-4">
                    <select  name="city" class="form-control">
                        <option selected disabled>Veuillez choisir une ville</option>
                        <option value="Casablanca">Casablanca</option>
                        <option value="Rabat">Rabat</option>
                        <option value="Fes">Fes</option>
                        <option value="Taza">Taza</option>
                        <option value="Agadir">Agadir</option>
                        <option value="Tanger">Tanger</option>
                        <option value="Oujda">Oujda</option>
                        <option value="Meknés">Meknés</option>
                    </select>
                </div>
                <div class="col-md-1">
                    <button type="submit" name="submit" class="btn btn-success"><i class="fa fa-search"></i></button>
                </div>
            </form>
        </div>
    </div>
    <hr>
    <div class="row">
        <div class="col-md-8">
            <div class="panel">
                <h3 class="text-default" style="padding:10px;"><?php echo $annonce->title;?></h3>
                <hr>
                <div class="row" style="padding:10px;">
                    <div class="row">
                        <div class="col-sm-10" style="margin-left:20px;">
                            <div class="">
                                <a href="<?php echo ($last != false) ? base_url().'ads/view/'.$last->id : "#";?>" class="btn btn-default pull-left"><i class="fa chevron-left"></i> Précedente</a>
                                <a href="<?php echo ($next != false) ? base_url().'ads/view/'.$next->id : "#";?>" class="btn btn-default pull-right"><i class="fa chevron-right"></i> Suivante</a>
                            </div>
                        </div>
                    </div>
                    <div class="media">
                        <div class="container" style="margin-bottom:10px;">
                           <img class="media-object thumbnail" class="thumbnail" src="<?php echo base_url();?>/assets/uploads/<?php echo $annonce->image;?>" alt="...">
                        </div>
                        <div class="media-body">
                            <div class="row">
                                <div class="col-md-10" style="margin-left:15px;">
                                    <blockquote><?php echo $annonce->body;?></blockquote>
                                </div>
                            </div>
                        </div>
                        <div class="media-footer" align="right">
                            <div class="row">
                                <div class="col-md-10" style="margin-left:20px;">
                                    <span class="label label-success"><i class="fa fa-tag"></i> <?php echo $annonce->category;?></span>
                                    <span class="label label-warning"><i class="fa fa-calendar"></i> <?php echo $annonce->created;?></span>
                                </div>
                            </div>
                        </div>
                    </div>
                    <hr>
                </div>
            </div>
        </div>
        <div class="col-md-4">
            <h3 class="text-default">Infos Annonceur</h3>
            <hr>
            <div class="row">
                <div class="col-md-10 col-md-offset-1">
                    <p class="text-info"><i class="fa fa-user"></i> <?php echo $annonce->firstname.' '.$annonce->lastname;?></span>
                    <p class="text-info"><i class="fa fa-phone"></i> <?php echo $annonce->Tel;?></p>
                    <p class="text-info"><i class="fa fa-map-marker"></i> <?php echo $annonce->city;?></p>
                </div>
            </div>
        </div>
    </div>
</div>
<?php $this->load->view('layouts/footer');?>
                                                        
                                                    

5- الملف User_model.php

ف Application/modelsغادي تزيد ملف جديد سميه User_model.php لي غادي يكون فيه ل fonction register_user لي كتزيد مستخدم جديد من بعد كاين fonction register_admin  لي كتزيد admin  جديد منبعد عندي login_user لي  كتكونيكطي المستخدم بالإمايل وكلمة المرور منبعد عندي get_users لي كترجع  المستخدمين لي كاينين فقاعدة البيانات منبعد عندي get_users_info  لي كترجع المعلومات الخاصة بمستخدم منبعد عندي get_admins لي كترجع  les admins لي كاينين فقاعدة البيانات منبعد كاين get_users_info_by_email لي كترجع المعلومات الخاصة ب بمستخدم باستعمال ل email ديالو منبعد كاين delete_user لي كتمسح مستخدم من قاعدة البيانات  الكود ديال الملف هو :

                                                        
                                                            <?php 
class User_Model extends CI_Model
{
    public function register_user(){
        $encrypted_pass = sha1($this->input->post('password'));
        $data = array(
            'lastname' => trim($this->input->post('prenom')),
            'firstname' => trim($this->input->post('nom')),
            'email' => trim($this->input->post('email')),
            'password' => $encrypted_pass,
            'city' => trim($this->input->post('city')),
            'Tel' => trim($this->input->post('tel')),
        );
        $this->db->insert('users',$data);
        return true;
    }
    public function register_admin(){
        $encrypted_pass = sha1($this->input->post('password'));
        $data = array(
            'lastname' => trim($this->input->post('prenom')),
            'firstname' => trim($this->input->post('nom')),
            'email' => trim($this->input->post('email')),
            'password' => $encrypted_pass,
            'city' => trim($this->input->post('city')),
            'Tel' => trim($this->input->post('tel')),
            'is_Admin' =>  1
        );
        $this->db->insert('users',$data);
        return true;
    }
    public function login_user($email,$password){
        $this->db->select('*');
        $this->db->from('users');
        $this->db->where(['email'=>$email,'password'=>sha1($password)]);
        $results = $this->db->get();
        if($results->num_rows() == 1){
            $user = $results->row();
            return $user->id;
        }else{
            return 'info incorrect';
        }
    }
    public function get_users(){
        $users = $this->db->get('users');
        return  $users->result();
    }
    public function get_users_info($id){
        $this->db->where(array('id'=>$id));
        $results = $this->db->get('users');
        return $results->row();
    }
    public function get_admins(){
        $this->db->where(array('is_Admin'=>1));
        $users = $this->db->get('users');
        return  $users->result();
    }
    public function get_users_info_by_id($id){
        $this->db->where(array('id'=>$id));
        $results = $this->db->get('users');
        return $results->row();
    }
    public function get_users_info_by_email($email){
        $this->db->where(array('email'=>$email));
        $result = $this->db->get('users');
        return $result;
    }
    public function delete_user($id){
        $this->db->where(array('id'=>$id));
        if($this->db->delete('users')){
            $this->Ads_model->user_annonces($id);
		}
        return true;
    }
}
?>