• 10-06-2019, 10:56:38
    #1
    Merhaba Arkadaşlar.

    Formla veri gönderip veritabanına sorunsuz kayıt yapıyorum. Formda paket name li bir select var. value leri 0,1 ve 2 şeklinde.Ben veritabanı kaydı yaptıktan sonra eğer 1. selecti seçtiyse takpi kodunuz oluşturuldu, ödeme sayfasına yönlendiriliyorsunuz yazıp,verdiğim linke gitmesini istiyorum. Yaptığım herşey sorunsuz çalışıyor. Acaba çalışıyormu diye 1. ve 2.seçeneğin sonucunu farklı yazdırıyorum sorunsuz çalışıyor. Ama gel gelelim yönlendirme işlemi olmuyor. Kodlarım aşağıdaki gibidir.

    <?php
    
    
    if ($_POST['gonder']) {
    
    $rand=rand(1000,30000);
    
    
    $kaydet=$db->prepare("INSERT INTO basvuru SET
    adsoyad=:adsoyad,
    email=:email,
    tel=:tel,
    firma=:firma,
    paket=:paket,
    takip=:takip
    ");
    $insert=$kaydet->execute(array(
    'adsoyad' => $_POST['adsoyad'],
    'email' => $_POST['email'],
    'tel' => $_POST['tel'],
    'firma' => $_POST['firma'],
    'paket' => $_POST['paket'],
    'takip' => $rand
    ));
    
    
    if ($_POST['paket']=='0') {
    
    echo "<span style='color:white;'>Takip kodunuz aşağıdadır.</span>" . " " . "<br>" .
    "<span style='color:white;'><font size='9'>$rand</font></span>";
    
    } elseif ($_POST['paket']=='1') {
    echo "<span style='color:white;'>Takip kodunuz aşağıdadır.</span>" . " " . "<br>" .
    "<span style='color:white;'><font size='9'>$rand</font></span>";
    
    echo "<br><span style='color:white;'> Ödeme Sayfasına Yönlendiriliyorsunuz...</span>";
    header("Refresh: 5; url=odeme.php?durum=2");
    
    }
    
    elseif ($_POST['paket']=='2') {
    echo "<span style='color:white;'>Takip kodunuz aşağıdadır.</span>" . " " . "<br>" .
    "<span style='color:white;'><font size='9'>$rand</font></span>";
    
    echo "<br><span style='color:white;'> Ödeme Sayfasına Yönlendiriliyorsunuz...</span>";
    header("Refresh:5; url=odeme.php?durum=3");
    }
    
    
    }
    
    ?>
  • 10-06-2019, 11:17:03
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Sayfanın en başına <?php ob_start(); ?> kodunu ekler misiniz?
  • 10-06-2019, 11:20:15
    #3
    ScriptEvin adlı üyeden alıntı: mesajı görüntüle
    Sayfanın en başına <?php ob_start(); ?> kodunu ekler misiniz?

    Denedim olmadı hocam.
  • 10-06-2019, 14:34:21
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Dilerseniz özelden uzak bağlantı (Anydesk) ID gönderin, bağlanıp destek olayım.
  • 10-06-2019, 16:01:49
    #5
    codev adlı üyeden alıntı: mesajı görüntüle
    Dilerseniz özelden uzak bağlantı (Anydesk) ID gönderin, bağlanıp destek olayım.
    Hocam iş yerinin bilgisayarı uzak bağlantı yaptıramam ama bilginiz varsa eğer yardımcı olabilirsiniz.
  • 10-06-2019, 16:24:10
    #6
    Bu gibi durumlarda header('Location: url..'); Kullan yada jquery yardımına koşsun.
    <script>
    setTimeout(function() {      
    window.location = "ornek.php";
    }, 2000);
    </script>
  • 10-06-2019, 16:42:15
    #7
    _halisoglu_ adlı üyeden alıntı: mesajı görüntüle
    Bu gibi durumlarda header('Location: url..'); Kullan yada jquery yardımına koşsun.
    <script>
    setTimeout(function() {      
    window.location = "ornek.php";
    }, 2000);
    </script>

    hocam jquery ile yaptım oldu çok teşekkür ederim size. Location ve refresh çalışmadı bu arada. Çalışmama sebebini çözebilmiş değilim.
  • 10-06-2019, 16:48:36
    #8
    Misafir adlı üyeden alıntı: mesajı görüntüle
    hocam jquery ile yaptım oldu çok teşekkür ederim size. Location ve refresh çalışmadı bu arada. Çalışmama sebebini çözebilmiş değilim.
    çalışmaması birkaç neden olabilir. başka arkadaşlarında dediği gibi bütün sayfaların en üstünde
    ob_start(); olmalı. Ayrıca deme esnasında sorun varmıdır bilmem ama birkereliğine bütün sessionları silin (session_destroy() sonra tekrar deneyin. Ayrıca header fonksiyonundan sonra exit(); kullanın.
    Örnek:
    header('Refresh:5; url=odeme.php?durum=3 ');
    exit;

    Ayrıca burada açıklamışlar istersen incele. İngilizce içeriktir.
    http://nimishprabhu.com/header-php-r...x-seconds.html
  • 10-06-2019, 16:55:28
    #9
    _halisoglu_ adlı üyeden alıntı: mesajı görüntüle
    çalışmaması birkaç neden olabilir. başka arkadaşlarında dediği gibi bütün sayfaların en üstünde
    ob_start(); olmalı. Ayrıca deme esnasında sorun varmıdır bilmem ama birkereliğine bütün sessionları silin (session_destroy() sonra tekrar deneyin. Ayrıca header fonksiyonundan sonra exit(); kullanın.
    Örnek:
    header('Refresh:5; url=odeme.php?durum=3 ');
    exit;

    Ayrıca burada açıklamışlar istersen incele. İngilizce içeriktir.
    http://nimishprabhu.com/header-php-r...x-seconds.html

    hocam bu dediklerinin hepsini tek tek denedim çözüm olmadı. Ben şahsen sorunu bulamadım. Ama olsun sayenizde php tıkandığı zaman başka dillerle çözüm bulmam gerektiğini tecrübe etmiş oldum.
    • _halisoglu_
    _halisoglu_ bunu beğendi.
    1 kişi bunu beğendi.