• 09-07-2023, 09:30:11
    #1
    Merhabalar, kendi scriptime aşağıda verdiğim linkte bulunan kaynak ile shopier entegrasyonu yaptım fakat şunu anlayamıyorum (umarım uykusuzluktandır) ben bundan dönen success sonuçu nerede insert edeceğim formdan gelen verileri yakalayıp nasıl birbirleriyle eşleştirip göstereceğim. Aydınlatır mısınız beni lütfen

    Kaynak
    https://github.com/kodusta/shopier/c...author=kodusta


    Form
                    <form action="shopierAPI22.php" method="post" role="form" enctype="multipart/form-data">
                        <div class="form-wizard-header">
                            <p>3 adımda <strong>biyometrik fotoğraf</strong></p>
                            <ul class="list-unstyled form-wizard-steps clearfix">
                                <li class="active"><span>1</span></li>
                                <li><span>2</span></li>
                                <li><span>3</span></li>
                            </ul>
                        </div>
                        <fieldset class="wizard-fieldset show">
    
                            <div class="form-group text-center">
                                <div class="col-sm-4 imgUp m-auto">
                                    <div class="imagePreview"></div>
                                    <label class="btn btn-primary">
                                    Yükle<input type="file" class="uploadFile img wizard-required" value="Upload" style="width: 0px;height: 0px;overflow: hidden;" name="photo" required>
                                    </label>
                                </div><!-- col-2 -->
                            </div>
    
                            <div class="form-group clearfix">
                                <a href="javascript:;" class="form-wizard-next-btn float-right">İleri</a>
                            </div>
                        </fieldset>    
                        <fieldset class="wizard-fieldset">
                                <h5>Sizinle iletişime geçebilmek için alanları eksiksiz doldurunuz</h5>
                                <div class="form-group">
                                    <input type="text" class="form-control wizard-required" id="fname" name="fname">
                                    <label for="fname" class="wizard-form-text-label">Ad*</label>
                                    <div class="wizard-form-error"></div>
                                </div>
                                <div class="form-group">
                                    <input type="text" class="form-control wizard-required" id="lname" name="lname">
                                    <label for="lname" class="wizard-form-text-label">Soyad*</label>
                                    <div class="wizard-form-error"></div>
                                </div>
                                <div class="form-group">
                                    <input type="text" class="form-control wizard-required" id="tel" name="tel">
                                    <label for="tel" class="wizard-form-text-label" type="number">Telefon Numarası*</label>
                                    <div class="wizard-form-error"></div>
                                </div>
                                <div class="form-group">
                                    <input type="text" class="form-control wizard-required" id="mail" name="mail">
                                    <label for="mail" class="wizard-form-text-label">E-posta*</label>
                                    <div class="wizard-form-error"></div>
                                </div>
                                <div class="row">
                                    <div class="col-lg-4 col-md-4 col-sm-4">
                                        <div class="form-group">
                                            <select class="form-control"  id="amount-select" name="amount-select">
                                                <option value="Adet">Adet</option>
                                                <option value="1">1 Adet</option>
                                                <option value="2">2 Adet</option>
                                                <option value="4">4 Adet</option>
                                                <option value="6">6 Adet</option>
                                                <option value="8">8 Adet</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="amount-price col-lg-8 col-md-8 col-sm-8">
                                        <div class="text-warning" style="display:block;">Lütfen Adet Seçiniz!</div>
                                        <div class="1piece">15TL</div>
                                        <div class="2piece">30TL</div>
                                        <div class="4piece">60TL</div>
                                        <div class="6piece">90TL</div>
                                        <div class="8piece">120TL</div>
                                    </div>
                            </div>  
                            <div class="form-group clearfix">
                                <a href="javascript:;" class="form-wizard-previous-btn float-left">Geri</a>
                                <a href="javascript:;" class="form-wizard-next-btn float-right">İleri</a>
                            </div>
                        </fieldset>    
                        <fieldset class="wizard-fieldset">
                            <h5>Siparişinizi onaylıyor musunuz?</h5>
                            <div class="form-group">
                                Adet
                                <input type="text" disabled class="form-control wizard-required" id="pieceval" value="">
                                <div class="wizard-form-error"></div>
                            </div>
                            <div class="form-group">
                                Fiyat
                                <input type="text" disabled class="form-control wizard-required" id="amountval" >
                            </div>
    
                            <div class="form-group clearfix">
                                <a href="javascript:;" class="form-wizard-previous-btn float-left">Geri</a>
                                <button type="submit">Onaylıyorum</button>
                            </div>
                        </fieldset>    
                    </form>
  • 09-07-2023, 10:25:13
    #2
    Galiba uykusuzluktanmış sorunu çözdüm, yorum yazmaya kalmadan araştırmaya başlamış olan hocalarıma çok teşekkür ederim.


    Olay benim biraz farklı kaynak bulmamdan dolayıymış.

    https://github.com/emreakdas/shopier...shopierAPI.php

    bu kaynaği incelediğimde aydınlandım resmen

    kısaca özetlemek istiyorum ben gibi olanlar için kolay akıllarında canlansın diye

    Shopier index sayfasını şu şekilde düzenledim
    <?php
    include 'config.php';
    include 'shopierAPI22.php';
    
    $fname = $_POST['fname'];
    $lname = $_POST['lname'];
    $mail = $_POST['mail'];
    $tel = $_POST['tel'];
    $amount = $_POST['amount-select'];
    $randdeger = rand(111111, 999999);
    
    
    
    
        if (move_uploaded_file($photo['tmp_name'], $uploadDirectory . $newFileName)) {
            // File uploaded successfully, proceed with inserting the data into the database
            $queryKayit = mysqli_query($connect, "INSERT INTO photos (name, surname, phone, mail, photo, piece, amount, date, status, GUID)
                                                VALUES ('$fname', '$lname', '$tel', '$mail', '$filePath', '', '$amount', NOW(), 0, '$randdeger')");
    
            if ($queryKayit) {
                $shopier = new Shopier('SHOIPERUSERID', 'SHOPIERKEY');
                $shopier->setBuyer([
                    'id' => $randdeger,
                    'paket' => 'Vesikalık',
                    'first_name' => $fname,
                    'last_name' => $lname,
                    'email' => $mail,
                    'phone' => $tel
                ]);
                $shopier->setOrderBilling([
                    'billing_address' => 'Kütahya / Merkez',
                    'billing_city' => 'Kütahya',
                    'billing_country' => 'Türkiye',
                    'billing_postcode' => '43000',
                ]);
                $shopier->setOrderShipping([
                    'shipping_address' => 'Kütahya / Merkez',
                    'shipping_city' => 'Kütahya',
                    'shipping_country' => 'Türkiye',
                    'shipping_postcode' => '43000',
                ]);
    
                $response = $shopier->run('544546545', $amount, 'https://siteadi.com/shopierNotify22.php');
    
                if ($response === false) {
                    die('Shopier yönlendirme hatası: ' . $shopier->error);
                } else {
                    die($response);
                }
            } else {
                die('Veritabanına kayıt işlemi başarısız oldu: ' . mysqli_error($connect));
            }
        }
    
    ?>
    GUID diye kolon ekledim ve rand seçilen değeri apıye gönderip sipariş ıdyi oluşturdum response olarak da bana sipariş idyi döndürdüğü için oradan aynı kolonu yakalayıp response dosyamda status u update ettim.
    Umarım yardımcı olmuşumdur.