• 24-04-2014, 00:37:58
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhabalar,

    Başlıkta özetlemeye çalıştığım gibi. Wordpress'te bir "sayfa" oluşturdum. Buraya dikkati baştan çekmek istiyorum, Yazı değil, Sayfa.

    Bu sayfa altında iki adet Özel Alan ekledim. Birisi Kod1, diğeri Kod2 adlı ve rakam, sayı karışık 5 hanelik değerleri var. Bu değerler her birinde 500'er tane. Yani Bu özel alan ile veritabanında Kod1 kolonuna kaydedilen veri sayısı 500 adet, Kod2 de aynı şekilde; dolayısı ile Kod1 ve Kod2 (array) dizi tipinde.

    Adımlardan oluşan bir form tasarladım. Adım 1'de 2 tane input (input type=text, textbox) var. bu inputlara girilen değerler, eğer veritabanındaki Kod1 ve Kod2'de karşılık buluyorsa adım 2'ye geçecek.

    Takıldığım yer sadece bu oluşturduğum texbox'a girilen verilerin, veritabanındaki Kod1 ve Kod2 kolonlarında aranması, textbox'a girilen değer ile aynı kayıt varsa veya yoksa bir değer döndürmesi, dönen değere göre ya uyarı mesajı ya da formu doldurtmaya devam ettireceğim.

    Özel Alanlar ile ilgili yapmış olduğum aramalarda, özel alanlardaki dizi değişkenlerini listelemek için gerekli fonksiyonu buldum:

    <?php echo get_post_meta($post->ID, 'Kod1', false); ?>
    Amacım veritabanındaki Kod1 kolonundan veri çekmek olmadığı için bu kod işime yaramıyor.

    Kod1 kolonunda yer alan verileri, formda yer alan textbox değeri ile eşlemek istiyorum.

    Umarım anlatabilmişimdir.

    Yardımcı olabilecek var mı?
  • 24-04-2014, 02:00:20
    #2
    işlem için mysql_num_rows() fonksiyonunu kullanılması lazım. mysql verisi çekimleri ve sorgulama için. aşağıdaki örnekten yola çıkarak bakabilirsini.

    $baglan = mysql_connect("localhost", "kullanici_adi", "sifre");
    mysql_select_db("veri_tabani_adi", $baglan);
    Örnek kullanıcı adı, index.php sayfasındaki form’dan gelsinr. Bu form’un değerlerini alıp kullanıcının kullanıcı sistemde kayıt olup olmadığını kontrol edebilirsiniz.

    <?php
    include "baglan.php";
     
    $gelen_isim = $_POST["isim"];
     
    $varmi = mysql_query("select * from uyeler where isim='$gelen_isim'");
    $kayit_sayisi = mysql_num_rows($varmi);
     
    if($kayit_sayisi > 0) {
        echo "Bu üye kayıtlı.";
    }else {
        echo "Böyle bir üye bulunamadı";
    }
    ?>
  • 24-04-2014, 08:05:54
    #3
    Turkyorumcu adlı üyeden alıntı: mesajı görüntüle
    işlem için mysql_num_rows() fonksiyonunu kullanılması lazım. mysql verisi çekimleri ve sorgulama için. aşağıdaki örnekten yola çıkarak bakabilirsini.

    $baglan = mysql_connect("localhost", "kullanici_adi", "sifre");
    mysql_select_db("veri_tabani_adi", $baglan);
    Örnek kullanıcı adı, index.php sayfasındaki form’dan gelsinr. Bu form’un değerlerini alıp kullanıcının kullanıcı sistemde kayıt olup olmadığını kontrol edebilirsiniz.

    <?php
    include "baglan.php";
     
    $gelen_isim = $_POST["isim"];
     
    $varmi = mysql_query("select * from uyeler where isim='$gelen_isim'");
    $kayit_sayisi = mysql_num_rows($varmi);
     
    if($kayit_sayisi > 0) {
        echo "Bu üye kayıtlı.";
    }else {
        echo "Böyle bir üye bulunamadı";
    }
    ?>
    Selam Turkyorumcu, ilgin ve paylaştıkların için teşekkür ederim.

    Wordpress fonksiyonları ile bu olayı öğrenmek istiyordum ama senin verdiğim kodu da deneyeceğim.
  • 25-04-2014, 07:56:06
    #4
    Mumkunse mysql_connect komutunu kullanmayin.mysqli veya pdo fonksiyonlarini tercih edin.

    MB860 cihazımdan Tapatalk kullanılarak gönderildi
  • 25-04-2014, 08:23:02
    #5
    Bunu wordpress fonksiyonları ile yapabilecek yok mu?

    Forumda bu konu bulunsun, illaki birilerine lazım olacaktır.
  • 25-04-2014, 09:14:19
    #6
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Tüm kod1 özel alanına ait değerler içerisinde bir kontrol sağlayacağından eşleşip eşleşmediğini ancak kod1 değerlerini mysql kodu ile çekerek bulabilirsin.
  • 25-04-2014, 12:19:41
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    coverover adlı üyeden alıntı: mesajı görüntüle
    Merhabalar,

    Başlıkta özetlemeye çalıştığım gibi. Wordpress'te bir "sayfa" oluşturdum. Buraya dikkati baştan çekmek istiyorum, Yazı değil, Sayfa.

    Bu sayfa altında iki adet Özel Alan ekledim. Birisi Kod1, diğeri Kod2 adlı ve rakam, sayı karışık 5 hanelik değerleri var. Bu değerler her birinde 500'er tane. Yani Bu özel alan ile veritabanında Kod1 kolonuna kaydedilen veri sayısı 500 adet, Kod2 de aynı şekilde; dolayısı ile Kod1 ve Kod2 (array) dizi tipinde.

    Adımlardan oluşan bir form tasarladım. Adım 1'de 2 tane input (input type=text, textbox) var. bu inputlara girilen değerler, eğer veritabanındaki Kod1 ve Kod2'de karşılık buluyorsa adım 2'ye geçecek.

    Takıldığım yer sadece bu oluşturduğum texbox'a girilen verilerin, veritabanındaki Kod1 ve Kod2 kolonlarında aranması, textbox'a girilen değer ile aynı kayıt varsa veya yoksa bir değer döndürmesi, dönen değere göre ya uyarı mesajı ya da formu doldurtmaya devam ettireceğim.

    Özel Alanlar ile ilgili yapmış olduğum aramalarda, özel alanlardaki dizi değişkenlerini listelemek için gerekli fonksiyonu buldum:

    <?php echo get_post_meta($post->ID, 'Kod1', false); ?>
    Amacım veritabanındaki Kod1 kolonundan veri çekmek olmadığı için bu kod işime yaramıyor.

    Kod1 kolonunda yer alan verileri, formda yer alan textbox değeri ile eşlemek istiyorum.

    Umarım anlatabilmişimdir.

    Yardımcı olabilecek var mı?
    Basit seviyede bile olsa php bilgisi gerektiriyor. En azından [POST] ve if() hakkında bilgin olmalı.

    Basit olarak anlatmak gerekirse formda post edilen input değerini if ile sorgulayarak sonraki aşamaya geçebilirsin.

    <?php
    // Formdan $kod1gelen ve $kod2gelen i alıyoruz.
    $kod1gelen = $_POST["kod1input"];
    $kod2gelen = $_POST["kod2input"];
    
    //bunları sayfa kaydettiğin özel alana ait ilk değerler ile karşılaştırıyoruz:
    
    $kod1kontrol = get_post_meta($post->ID, 'Kod1', false);
    $kod2kontrol = get_post_meta($post->ID, 'Kod2', false);
    
    if($kod1gelen == $kod1kontrol && $kod2gelen == $kod2kontrol){
    
    echo "iki şifrede doğru ;)";
    }else {
    
    echo "Şifreler yanlış.";
    } ?>
    <form action="" name="kontrol" id="kontrol" method="post">
    <input type="text" name="kod1input">
    <input type="text" name="kod2input">
    <input type="submit" value="gönder">
    </form>
    şeklinde basit bir kullanım ile devam edebilirsin Sanıyorum
  • 25-04-2014, 16:15:27
    #8
    mervancanturk adlı üyeden alıntı: mesajı görüntüle
    Basit seviyede bile olsa php bilgisi gerektiriyor. En azından [POST] ve if() hakkında bilgin olmalı.

    Basit olarak anlatmak gerekirse formda post edilen input değerini if ile sorgulayarak sonraki aşamaya geçebilirsin.

    <?php
    // Formdan $kod1gelen ve $kod2gelen i alıyoruz.
    $kod1gelen = $_POST["kod1input"];
    $kod2gelen = $_POST["kod2input"];
    
    //bunları sayfa kaydettiğin özel alana ait ilk değerler ile karşılaştırıyoruz:
    
    $kod1kontrol = get_post_meta($post->ID, 'Kod1', false);
    $kod2kontrol = get_post_meta($post->ID, 'Kod2', false);
    
    if($kod1gelen == $kod1kontrol && $kod2gelen == $kod2kontrol){
    
    echo "iki şifrede doğru ;)";
    }else {
    
    echo "Şifreler yanlış.";
    } ?>
    <form action="" name="kontrol" id="kontrol" method="post">
    <input type="text" name="kod1input">
    <input type="text" name="kod2input">
    <input type="submit" value="gönder">
    </form>
    şeklinde basit bir kullanım ile devam edebilirsin Sanıyorum
    Bu kod çok sağlam, eline, aklına sağlık dostum.

    if($kod1gelen == $kod1kontrol && $kod2gelen == $kod2kontrol){
    
    echo "iki şifrede doğru ;)";
    }else {
    
    echo "Şifreler yanlış.";
    }
    Kısmını; iki kod sütununda da aynı sayıda kayıt olduğu ve tüm satırlarda arama yapması gerektiği için:

    for($i=0;$i<=count($kod1kontrol);$i++)
    {
    if(($Kod1[$i]==$kod1input) and ($Kod2[i]==$kod2input))
    {
    echo "iki şifrede doğru ;)";
    }
    else
    {
    echo "Şifreler yanlış.";
    }
    }
    Kodlarıyla değiştirmeye gerek var mı sence?
  • 25-04-2014, 17:09:00
    #9
    coverover adlı üyeden alıntı: mesajı görüntüle
    Bu kod çok sağlam, eline, aklına sağlık dostum.

    if($kod1gelen == $kod1kontrol && $kod2gelen == $kod2kontrol){
    
    echo "iki şifrede doğru ;)";
    }else {
    
    echo "Şifreler yanlış.";
    }
    Kısmını; iki kod sütununda da aynı sayıda kayıt olduğu ve tüm satırlarda arama yapması gerektiği için:

    for($i=0;$i<=count($kod1kontrol);$i++)
    {
    if(($Kod1[$i]==$kod1input) and ($Kod2[i]==$kod2input))
    {
    echo "iki şifrede doğru ;)";
    }
    else
    {
    echo "Şifreler yanlış.";
    }
    }
    Kodlarıyla değiştirmeye gerek var mı sence?
    Mevzuyu çözmüşsün dostum