Dinamik değeri kontrol etmek için bir veritabanı sorgu

3 Cevap php

Ben belli bir değer "SheetNumber" dinamik benim mysql veritabanında olup olmadığını kontrol etmeniz gerekir. Ben popüler web sitelerinde yapılır ve ben benim için anahat için iyi bir öğretici bulmaya çalışıyorum gördük. Ben JavaScript için oldukça yeni ama ben PHP bir çok şey biliyorum.

Bunu öğrenmek için endişeli değilim.

  • Chris

3 Cevap

Sen Ajax kullanarak bunu yapmak gerekir. Ben Jquery kütüphane öneririz. JQuery belgeleri kullanarak yükleyin ve ardından aşağıdaki gibi bir şey kullanabilirsiniz:

Javascript:

function makeAjaxRequest()
{
   var url="script-that-checks-db.php";
   $.get(url,{},verifyDb);
}

function verifyDb(response)
{
    if (response==1)
    {
       //The value exists, do what you want to do here
    }

    else
    {
      //The value doesn't exist
    }
}

Eğer birisi, bir bağlantıyı tıkladığında, bir düğme veya başka bir şey, örneğin tıkladığında makeAjaxRequest() çağrılır olabilir:

<a href="#" onclick="makeAjaxRequest();">Check database</a>

Dosyanın php kodu script-that-checks-db.php (tabii, ismi farklı bir şey) db kontrol için sorumlu olacaktır. Kod böyle bir şey olmazdı.

PHP:

<?php

//Do the mysql query and find out if the value exists or not.

if ($exists==true)
   echo "1"; //1 will indicate to javascript that the value exists.
else
   echo "0";
?>

Burada ayrıca JSON yerine 0/1 yöntemini kullanabilirsiniz, ama yeni olduğu için ben bu sizin için yeterince basit olacağını düşünüyorum.

Eğer herhangi bir soru sormaya çekinmeyin varsa, bu, yardımcı olur umarım. Ayrıca, işlev ve dosya isimlerini değiştirmek için çekinmeyin.

Bu oldukça basit; AJAX fonksiyonları üzerinde jQuery belgeleri kontrol: jQuery.get()

Sen ham veri, XML, ya da daha sonra jQuery arama fonksiyonu ile yorumlamak JSON formatlı veri döndüren basit bir PHP hizmeti kurmak gerekir.

Örnek:

function checkData(userInputValue) {
  jQuery.get('ajax-backend.php?value='+userInputValue, false, function(data) { alert('Response from server: ' + data)});
}

Bunun yerine sunucudan yanıt görüntülemek için alert () kullanarak, muhtemelen bu değeri yorumlamak ve işlemin başarılı olup olmadığını gösteren sayfada bir şey değiştirmek isterdim.

Beginning jQuery help: İşte bir önceki soruya daha ayrıntılı bir örnek

Ben varsayalım tarafından "dinamik" bir "AJAX" çözüm öneren, "sayfayı terk etmeden" demek.

Size veritabanı istemci tarafı JavaScript kullanarak erişimi olamaz, sana ne istediğidir "perde arkasında" bir PHP komut dosyası çağırmak için jQuery gibi bir JavaScript kütüphanesi / çerçeve kullanmanızı öneririz.