v2.5.2
Giriş yap

php kupon kodu

emmir2
460 defa görüntülendi ve 1 kişi tarafından değerlendirildi

Form kısmında kupon yerim mevcut

<div class="setting__row" style="margin-top: 29px;">
                          <div class="field">
                      <div class="price__stage"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Kupon Kodu Ekle</font></font></div>
                  <form class="subscription" method="POST">
                    <input class="subscription__input" type="text" name="kod" placeholder="Kupon Kodu Ekle">
                  <div class="payment__btns">
                        <button type="submit" name="kuponbak" class="button payment__button">Uygula</button>
                      </div>

                  </form>

                <?php
                 $kupon_text = 'Geçersiz Kupon';

                   if(isset($_POST['kuponbak'])){
                      $_SESSION['kupon'] = $_POST['kod'];
                    }

                    if(isset($_SESSION['kupon'])){

                      $kupon = $db->prepare("SELECT * FROM kupon where kod=:kod LIMIT 1");
                      $ka = $kupon->execute(array(":kod"=>$_SESSION['kupon']));
                      $ka = $kupon->fetch(PDO::FETCH_ASSOC);

                      if($ka){
                        if($ka['indirim_turu'] == 0){
                          $toplam = $cek['uyelik_fiyati'] - (($cek['uyelik_fiyati'] * $ka['tutar']) / 100);
                          $kupon_text = '%'.$ka['tutar'].' İndirim';
                        }
                      }
                    }
            ?>
            <?php 
                if(isset($_SESSION['kupon'])){
                            echo '<li><span> Kupon İndirimi: </span> <span>'.$kupon_text.'</span></li>';
                          }
              ?>

İyzico Ödeme sayfasında fiyat kısmı karışıyor bu kısmı yapamadım
bazen doğru veriyor bazen fiyatı hiç vermiyor dolayısı ile ödeme sayfasını açmıyor yapmak istediğim şu kısaca bir kupon varsa indirimli tutar aktif olsun değilse sabit üyelik fiyati

$toplam = $cek['uyelik_fiyati'];
if(isset($_SESSION['kupon'])){

    $kupon = $db->prepare("SELECT * FROM kupon where kod=:kod LIMIT 1");
    $ka = $kupon->execute(array(":kod"=>$_SESSION['kupon']));
    $ka = $kupon->fetch(PDO::FETCH_ASSOC);

        if($ka){
            $toplam = $cek['uyelik_fiyati'] - (($cek['uyelik_fiyati'] * $ka['tutar']) / 100);
        }
     }

$genel_toplam = $toplam;
Cevap yaz
Cevaplar (1)
munzevi
661 gün önce

sayfada session başlattın mı? bence session da kupon bilgisini tutman tutarsızlıklara davetiye çıkartabilecek bir durum.

if($_POST["kupon"){
    $kupon = $db->prepare("SELECT tutar FROM kupon where kod=:kod");
    $ka = $kupon->execute(array(":kod"=>$_POST['kupon']));
    $ka = $kupon->fetch(PDO::FETCH_ASSOC);
    $toplam = $ka->rowCount() > 0 ?
        $cek['uyelik_fiyati'] - (($cek['uyelik_fiyati'] * $ka['tutar']) / 100):
    $cek['uyelik_fiyati'];
    return $toplam;
}

ufak bir detay select de yıldız kullanma, ihtiyacın olan kolonu seç, daha performanslı olur. sorguladığın alanı seçmenede gerek yok, tutarı seçtim ama kod'u sorguladım örneğin.
böyle bi deneyi ver session'lardan da kurtulmaya bak. kupon için gereksiz.