Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

PHP + JQuery + SelectBox

mrb.
benim 3 adet selectbox'ı birbirleriye ilişkili çalıştırmam lazım ama olmadı
1. selectbox da Günü
2. sselectbox'da günün yemeğini
3. selectbox da saatini db den almam
lazım ama ama 3nü ilişkili çalıştırmam lazım
yarım yamalk çalışıyor load da çalışmıyor günü seçiyorum saat gelmior
bunu nasıl halledebilirim
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • teacher0610 adlı üyenin fotoğrafı
    9 yıl önce yazılmış
    54 cevap - 29 soru
    istediğin işi jquery ile kolayca yapabilirsin.Öncelikle bütün selectlere id atamalısın.

    $(document).ready(function(){
    
    function getir(a){
    if (a==1){
                                                  $.ajax({
    			type: 'POST',
    			url:  'getir.php',
    			data: 'id='+$("#kutu1 option:selected").val(),
    			success: function(cvp) {
    			$('#gelendiv1').html(cvp);
    			}
    
                      }
    
    if (a==2){
                                                  $.ajax({
    			type: 'POST',
    			url:  'getir.php',
    			data: 'id='+$("#kutu2 option:selected").val(),
    			success: function(cvp) {
    			$('#gelendiv2').html(cvp);
    			}
    
                      }
    if (a==3){
                                                  $.ajax({
    			type: 'POST',
    			url:  'getir.php',
    			data: 'id='+$("#kutu3 option:selected").val(),
    			success: function(cvp) {
    			$('#gelendiv3').html(cvp);
    			}
    
                      }
    
    
    
    }
    
    $("#kutu1").change(function(){getir(2);})
    $("#kutu2").change(function(){getir(3);})
    $("#kutu3").change(function(){getir(4);})
    
    });
    
    


    Buraya kadar olanı sayfana ekle.(Jquery i eklemeyi unutma :))

    Sonra getir.php adında bir dosya oluştur. $_POST ile gelen id yi al ve istediğin sorulamayı yaptır sonucu da echo ile yazdır. Sayfa yenilenmeden içerik gelir. Yalnız gelen içerik için ben gelendiv1, 2 , 3 yazdım sen istediğin ismleri verebilirsin.

Cevaplar

  • mehmetali adlı üyenin fotoğrafı
    9 yıl önce yazılmış
    41 cevap - 103 soru
    hocam tşk. ler ama çalıştıramadım sanırım nesnelerin id lerini karıştırdım
    html sayfasını yazman mükümse
    rica etsem yazabilirismn
    • teacher0610 adlı üyenin fotoğrafı teacher0610
      <select id="kutu1">.......</select>
      
      <div id="gelendiv1">
      </div>
      
      <div id="gelendiv3">
      </div>
      
      <div id="gelendiv3">
      </div>
       
      


      body tagları arasına bunları koy. İlk selectin içini doldur. Diğer selectler ise getir.php den gelecek. orada sorgulamadan sonra oluşan sonucu bir selectin içerisine yazdırman lazım.id leri kutu2 ve kutu3 olacak.

      Şu şekilde :
      
      echo "<select id='kutu2'><option value='$id'>".$deger."</option></select>"
      


      gibi.
      9 yıl önce yazılmış
    • teacher0610 adlı üyenin fotoğrafı teacher0610
      Bu arada ilk cevaptaki

      $("#kutu2").change(function(){getir(3);})  
      
       $("#kutu3").change(function(){getir(4);})  
      


      kısmını

      
      $("#kutu2").live("change",function(){getir(3);})
      $("#kutu3").live("change",function(){getir(4);})
      
      


      şeklinde düzeltelim..
      9 yıl önce yazılmış
    • mehmetali adlı üyenin fotoğrafı mehmetali
      üstad yine olmadı
      şu şekilde index.html
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
      <title>Untitled Document</title>
      <script type="text/javascript" src="js/jquery.js"></script>
      <script language="javascript">

      $(document).ready(function(){

      function getir(a){
      if (a==1){
      $.ajax({
      type: 'POST',
      url: 'getir.php',
      data: 'id='+$("#kutu1 option:selected").val(),
      success: function(cvp) {
      $('#gelendiv1').html(cvp);
      }

      }

      if (a==2){
      $.ajax({
      type: 'POST',
      url: 'getir.php',
      data: 'id='+$("#kutu2 option:selected").val(),
      success: function(cvp) {
      $('#gelendiv2').html(cvp);
      }

      }
      if (a==3){
      $.ajax({
      type: 'POST',
      url: 'getir.php',
      data: 'id='+$("#kutu3 option:selected").val(),
      success: function(cvp) {
      $('#gelendiv3').html(cvp);
      }

      }



      }

      $("#kutu2").live("change",function(){getir(3);})
      $("#kutu3").live("change",function(){getir(4);})

      });


      </script>
      </head>

      <body>
      <select id="kutu1" onchange="getir(1)">
      <option value="1">aa</option>
      <option value="2">bb</option>
      </select>

      <div id="gelendiv1">
      </div>

      <div id="gelendiv2">
      </div>

      <div id="gelendiv3">
      </div>

      </body>
      </html>




      burasıda
      getir.php
      <?php
      $id=$_POST["id"];
      echo "<select id='kutu2'><option value='$id'>".$deger."</option></select>"

      ?>
      9 yıl önce yazılmış
    • varezci adlı üyenin fotoğrafı varezci
      Dikkatime çarpan en büyük hatalı nokta şu bence sayfanı kaydediş biçimin. Sayfanı yukarda belirttiğin gibi index.html olarak kaydettiysen zaten çalışmasını beklememen gerekir. Php olarak kaydedip localhostta bir dene istersen
      9 yıl önce yazılmış
    • mehmetali adlı üyenin fotoğrafı mehmetali
      değişen bi şey yok usta
      9 yıl önce yazılmış
    • teacher0610 adlı üyenin fotoğrafı teacher0610
      Kardeş oturdum yaptım sırf senin için... ekliyorum dosyaları. Kendine uyarlarsın artık....

      index.php
      ___________________
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
      <html xmlns="http://www.w3.org/1999/xhtml"> 
      <head> 
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
      <title>Untitled Document</title> 
      <script type="text/javascript" src="jquery.js"></script> 
      <script language="javascript"> 
      
      $(document).ready(function(){ 
      
      function getir(a){ 
      	if (a==1){ 
      		$.ajax({ 
      		type: 'POST', 
      		url: 'getir.php', 
      		data: 'id='+$("#kutu1 option:selected").val(), 
      		success: function(cvp) { 
      		$('#gelendiv1').html(cvp); 
      		}})};
      
      	if (a==2){ 
      		$.ajax({ 
      		type: 'POST', 
      		url: 'getir.php', 
      		data: 'id='+$("#kutu2 option:selected").val(), 
      		success: function(cvp) { 
      		$('#gelendiv2').html(cvp); 
      		}})};
      		
      	if (a==3){ 
      		$.ajax({ 
      		type: 'POST', 
      		url: 'getir.php', 
      		data: 'id='+$("#kutu3 option:selected").val(), 
      		success: function(cvp) { 
      		$('#gelendiv3').html(cvp); 
      		}})};
      
      
      }
      $("#kutu1").change(function(){getir(1);})
      $("#kutu2").live("change",function(){getir(2);}) 
      $("#kutu3").live("change",function(){getir(3);}) 
      
      });
      
      
      </script> 
      </head> 
      
      <body> 
      <select id="kutu1"> 
      <option value="0">Seçiniz</option> 
      <option value="1">aa</option> 
      <option value="2">bb</option> 
      </select> 
      
      <div id="gelendiv1"> 
      </div> 
      
      <div id="gelendiv2"> 
      </div> 
      
      <div id="gelendiv3"> 
      </div> 
      
      </body> 
      </html> 
      
      
      
      



      getir.php
      ____________________

      <?php 
      ini_set("display_errors",0);
      header ("Content-Type: text/html; charset=iso-8859-9");
      $id=$_POST["id"]; 
      if ($id>0 && $id<5) {echo "<select id='kutu2'><option value='0'>Seçiniz</option><option value='5'>ccccccc</option><option value='6'>ddddddd</option></select>"; }
      
      if ($id>4) {echo "<select id='kutu3'><option value='0'>Seçiniz</option><option value='9'>ccccccc</option><option value='10'>ddddddd</option></select>"; }
      ?> 
      
      
      


      Bu arada hepsi aynı dzinde olsun ve jqueryi de eklemeyi unutma....
      9 yıl önce yazılmış
    • mehmetali adlı üyenin fotoğrafı mehmetali
      @teacher0610
      çok saolsın tşk. ederim
      allah razı olsun
      9 yıl önce yazılmış
    • teacher0610 adlı üyenin fotoğrafı teacher0610
      Rica ederim. Önemli olan bilgiyi paylaşmaktır... Ve emeğe saygı tabiki... Doğru cevap işaretlemesi yapalım ltf...
      9 yıl önce yazılmış