• 21-01-2024, 17:41:38
    #1
    Merhaba,
    Shopier'in notify kısmında bir hata alıyorum siteye kredi eklerken. Başarılı bir şekilde ödeme kanalına yönleniyorum ödeme smsini girince başarılı bir şekilde ödeme kanalına düşüyor fakat şöyle bir hata alıyorum bilgisi olan arkadaşlarımın forumdaşlarımın yardımını bekliyorum, şimdiden teşekkürler



    Kod Bloğu şu şekilde
    <?php
    
    if(!isset($_SESSION)){session_start();}
    
    require_once("baglan.php");
    
    $sites  = $vt->query("select * from siteayar")->fetchAll(PDO::FETCH_ASSOC); foreach ($sites as $sites)
    
    $status = $_POST["status"];
    
    $invoiceId = $_POST["platform_order_id"];
    
    $transactionId = $_POST["payment_id"];
    
    $installment = $_POST["installment"];
    
    $signature = $_POST["signature"];
    
    
    
    $data = $_POST["random_nr"] . $_POST["platform_order_id"] . $_POST["total_order_value"] . $_POST["currency"];
    
    $signature = base64_decode($signature);
    
    $expected = hash_hmac('SHA256', $data, $sites["keysifre"], true);
    
    
    
    
    
    if ($signature == $expected) {
    
      $status = strtolower($status);
    
      if ($status == "success") {
    
        
    
        $get_order = $db->query("SELECT * FROM shopierOrder WHERE orderNo = '".$invoiceId."'")->fetch(PDO::FETCH_ASSOC);
    
        $update_order = $db->query("UPDATE shopierOrder SET status = 1 WHERE orderNo = '".$invoiceId."'");
    
        $old_balance = $db->query("SELECT id,bakiye FROM uyeler WHERE id = '".$get_order["user_id"]."'")->fetch(PDO::FETCH_ASSOC);
    
        $old_balance = $old_balance["bakiye"] + $get_order["amount"];
    
        if($db->query("UPDATE uyeler SET bakiye = '{$old_balance}' WHERE id = '".$get_order["user_id"]."'"))
    
            echo '<script>alert("Kredi Yükleme İşleminiz Başarılı. Lütfen Tekrar Giriş Yapınız..")</script>
    
        <meta http-equiv="refresh" content="0;URL=kredin.php">
    
        ';
    
        else
    
            echo "<script>alert('Yükleme İşlemi Başarısız')</script>";
    
        
    
      } else {
    
        echo "hata";
    
      }
    
    }
    
    else
    
        echo "Bad Hash";
  • 21-01-2024, 17:50:51
    #2
    $db->query yerine $vt->query kullanmalısınız
  • 21-01-2024, 17:52:11
    #3
    Netz adlı üyeden alıntı: mesajı görüntüle
    $db->query yerine $vt->query kullanmalısınız
    o kısımdakı hepsini bu şekilde değiştirmelimiyim?
  • 21-01-2024, 17:52:56
    #4
    c312 adlı üyeden alıntı: mesajı görüntüle
    o kısımdakı hepsini bu şekilde değiştirmelimiyim?
    evet, olmazsa baglan.php içini atın
  • 21-01-2024, 17:54:08
    #5
    Netz adlı üyeden alıntı: mesajı görüntüle
    evet, olmazsa baglan.php içini atın
    baglan.php içi bu şekilde

    <?php
    
    try {
      $vt= new PDO("mysql:host=localhost;dbname=xxxx_legal;charset=utf8","xxxxxx_legal","xxxx++");
    } catch (PDOException $e) {
      echo $e->getMessage();
    }
    
    date_default_timezone_set('Europe/Istanbul');
    session_start();
    
    
    
    
    ?>
  • 21-01-2024, 17:54:43
    #6
    c312 adlı üyeden alıntı: mesajı görüntüle
    baglan.php içi bu şekilde

    <?php
    
    try {
      $vt= new PDO("mysql:host=localhost;dbname=zagorm2com_legal;charset=utf8","zagorm2com_legal","147258369l++");
    } catch (PDOException $e) {
      echo $e->getMessage();
    }
    
    date_default_timezone_set('Europe/Istanbul');
    session_start();
    
    
    
    
    ?>
    $db yerine $vt kullanacaksınız her yerde
  • 21-01-2024, 17:55:58
    #7
    Netz adlı üyeden alıntı: mesajı görüntüle
    $db yerine $vt kullanacaksınız her yerde
    O halde baglan.php de bir sorun yok tüm sorun notify.php kısmında
  • 21-01-2024, 17:57:27
    #8
    c312 adlı üyeden alıntı: mesajı görüntüle
    O halde baglan.php de bir sorun yok tüm sorun notify.php kısmında
    kopyala yapıştır kod kullanıp hatalı revize etmişsiniz değişken isimleriniz hatalı görünüyor belirttiğim şekilde düzelir, çözümleyemezseniz pm iletirseniz ücretli destek sağlarız.
  • 21-01-2024, 21:12:43
    #9
    Netz adlı üyeden alıntı: mesajı görüntüle
    kopyala yapıştır kod kullanıp hatalı revize etmişsiniz değişken isimleriniz hatalı görünüyor belirttiğim şekilde düzelir, çözümleyemezseniz pm iletirseniz ücretli destek sağlarız.
    Dediğiniz gibi $db leri $vt olarak düzeltince sorun ortadan kalktı. Teşekkürler