كيفاش تصاوب موقع ecommerce ب codeigniter الجزء الرابع

فهاد الجزء الرابع من كيفاش تصاوب موقع ecommerce ب codeigniter غادي نكملو الملفات النهائية لي غادي يمكنونا باش يكمل المشروع ديالنا ولي هما ملف css والملف الخاص بل panier.

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


1- الملف autoload.php


ف config/autoload.php كندير تغييرات على لملف كنزيد models لي عندي وكنزيد librairies و helpers لي غادي نحتاج الكود النهائي هو :

                                    
                                        <?php
defined('BASEPATH') OR exit('No direct script access allowed');
$autoload['packages'] = array();
$autoload['libraries'] = array('database','form_validation','session','cart');
$autoload['drivers'] = array();
$autoload['helper'] = array('url','form','db');
$autoload['config'] = array();
$autoload['language'] = array();
$autoload['model'] = array('Product_model','Users_model');
                                    
                                

2- الملف main.php


فالمجلد layouts كنزيد ملف جديد سميه main.php هو لي غادي يمكني باش نعرض الصفحات ديالي وغادي يكون فيه لheader ول footer الكود ديالو هو :

                                    
                                        <?php $this->load->view('layouts/includes/header');?>
<?php $this->load->view($main_content);?>
<?php $this->load->view('layouts/includes/footer');?>
                                    
                                

3- الملف cart_view.php


فأول حاجة باش نديرو واحد المثال على شراء منتوج بواسطة حساب بايبال كتمشي ل https://developer.paypal.com كان عندك حساب كتدخل به مكانش كتفتح حساب لي هو للتجريب فقط من بعد كتمشي لDashboard ومنبعد للقائمة على الشمال sandbox->accounts->create account وكتفتح حساب فsandbox من بعد كتخد للإمايل لي عطاوك كاين 3 غادي تاخد type business ومن بعد غادي تمشي لhttps://www.sandbox.paypal.com وغادي تدخل بالإمايل وكلمة المرور ديال لحساب sandbox لي فتحتي هاد الإمايل هو لي غادي تزيد فالفورم راه كتبتها فالكود من بعد فالمجلد views غادي تزيد ملف جديد سميه cart_view.php لي كيسترجع المنتوجات لي عندنا فل panier وكيعرضهم فجدول بالإضافة للمجموع الكلي والزر لكيمكن من المرور للأداء الكود ديال الملف هو :

                                      
                                        <div class="container">
     <div class="row">
        <div class="col-md-4">
            <?php $this->load->view('layouts/includes/sidebar');?>
        </div>
        <div class="col-md-8">
        <div class="panel panel-default panel-left">
            <div class="panel-heading panel-heading-dark"><h3 class="panel-title">Mon panier</h3></div>
            <div class="panel-body">
            <?php if($this->cart->contents()) :?>
             <?php 
                $item_name = 1;
                $item_number = 1;
                $amount = 1;
                $quantity = 1;
             ?>
             <form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
                <table class="table table-striped">
                    <tr>
                        <th>Quantité</th>
                        <th>Produit</th>
                        <th>Prix</th>
                        <th>Total</th>
                    </tr>
                    <?php $i = 1; ?>
                    <?php foreach ($this->cart->contents() as $items): ?>
                    <?php echo form_hidden($i.'[rowid]', $items['rowid']); ?>
                    <tr>
                        <td><?php echo form_input(array('name' => $i.'[qty]', 'value' => $items['qty'], 'maxlength' => '3', 'size' => '1')); ?></td>
                        <td>
                            <?php echo $items['name']; ?>
                            <?php if ($this->cart->has_options($items['rowid']) == TRUE): ?>
                                <p>
                                <?php foreach ($this->cart->product_options($items['rowid']) as $option_name => $option_value): ?>
                                    <strong><?php echo $option_name; ?>:</strong> <?php echo $option_value; ?><br />
                                <?php endforeach; ?>
                                </p>
                            <?php endif; ?>
                        </td>
                        <td><?php echo $this->cart->format_number($items['price']); ?></td>
                        <td><?php echo $this->cart->format_number($items['subtotal']); ?></td>
                        <input type="hidden" name="cmd" value="_cart">
                        <input type="hidden" name="business" value="votre email compte sandox business">
                        <input type="hidden" name="item_name_<?php echo $item_name;?>" value="<?php echo $items['name'];?>">
                        <input type="hidden" name="item_number_<?php echo $item_number;?>" value="<?php echo $items['id'];?>">
                        <input type="hidden" name="amount_<?php echo $amount;?>" value="<?php echo $items['price'];?>">
                        <input type="hidden" name="quantity_<?php echo $quantity;?>" value="<?php echo $items['qty'];?>">
                    </tr>
                     <?php 
                        $item_name++;
                        $item_number++;
                        $amount++;
                        $quantity++;
                    ?>
                    <?php $i++; ?>
                    <?php endforeach; ?>
                    <tr>
                    <!--td clolspan="3" class="cart-shipping">Shipping : $4.99</td>-->
                    </tr>
                    <tr>
                    <td clolspan="3" class="cart-total label label-danger">Total : <?php echo $this->cart->format_number($this->cart->total()); ?>dh</td>
                    </tr>
                </table>
            <?php if(!$this->session->userdata('logged') && empty($this->session->userdata('id'))):?>
                <a href="<?php echo base_url();?>" class="alert alert-info">Connectez vous pour passer au paiement</a>
            <?php else :?>
                  <button type="submit" name="upload" class="btn btn-danger">Valider vos achats</button>
            <?php endif;?>
            </form>
            <?php endif;?>
          </div>
        </div>
    </div>
</div> <!-- /container -->

                                      
                                    

4- الملف custom.css


فالمجلد الرئيسي غادي تزيد مجلد سميه assets وزيد فيه 4 دالمجلدات css وjs و fonts و images منبعد متحمل bootstrap زيد الملفات لي ف css فالمجلد css ولي فالمجلد js ف js ولي ف fonts ف fonts والصور لي غادي نستعملو غادي تلقاهم فالكود سورس من بعد زيد ملف ف css سميه custom.css ولي غادي يكون فيه des styles لي غادي يمكنو من تعديل المظهر ديال الصفحات ديالنا الكود ديال هو :

                                        
                                            body{
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  background: #F8F8F8;
}
.block-cart{
  background: #fff;
  color:#333;
  padding:10px;
  margin-bottom:20px;
  border-radius: 2px;
  border: 1px solid #333;
  box-shadow: 1px 1px 1px #333;
}
.panel-list a{
  display: block;
  color: #666;
}
.panel-list .panel-heading h3{
  padding: 4px;
  font-size: 18px;
}
.panel-heading-green{
  background: #333 !important;
  color: #fff !important;
}
.panel-heading-dark{
  background: #333 !important;
  color: #fff !important;
}
.game{
  display: relative;
}
.game-title{
  text-align: center;
  padding: 5px;
  background: #333;
  color:#fff;
}
.game img{
  width: 100%;
}
.details img{
  width: 100%;
  padding-left: 10px;
}
.game-price{
  position: absolute;
  bottom: 130px;
  right: 15px;
  background: #00a1a7;
  color: #fff;
  padding: 5px;
  font-size: 22px;
}
.game-add{
  margin: 5px auto 20px auto;
  width: 100%;
  text-align: center;
}
.details-price{
  font-size:25px;
  margin-bottom: 20px;
}
.details img{
  width: 100%;
}
.footer{
  background: #333;
  color:#fff;
  height: 50px;
  text-align: center;
  padding: 15px;
  margin-bottom: 10px;
  border: 1px solid #333;
  box-shadow: 1px 1px 1px #333;
}
.qty{
  width:40px;
  color:#666 !important;
  text-align:center;
  margin-bottom: 5px;
}

                                        
                                    

5- الملف routes.php


أخيرا ف config/routes هادا الملف لي فيه les routes ديالنا غادي ندير route par defaut هو products الكود هو :

                                        
                                            $route['default_controller'] = 'products';
                                        
                                    

كلمات مفاتيح :