lostyazilim
tr.link

[PAYLAŞIM] Veritabanına Bağlı Dinamik Combobox, Checkbox vs.

9 Mesajlar 1.458 Okunma
lstbozum
tr.link

compost0x compost0x Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 26.05.2018
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Muğla
  • Ad Soyad A** Y**
  • Mesajlar 99
  • Beğeniler 23 / 19
  • Ticaret 2, (%50)
Merhaba arkadaşlar,

Daha önce dinamik olmayan veritabanına bağlı combobox, checkbox vs.. anlatımım mevcuttu.

https://wmaraci.com/forum/php/paylasim-veritabanina-bagli-radio-checkbox-vbulletin-527567.html


Şimdi anlatacağım ise veritabanına bağlı dinamik combobox ve checkbox. İl ve ilçe vb. şekillerde kullanabilirsiniz.

Anlatım combobox içindir, fakat türevleri içinde aynı yöntem geçerlidir.

Sırasıyla ;

2 Adet tablomuz olsun, bunlar :

1. tablo fakulteler
2. tablo bolumler

Bu tablolarımızın tasarımı şu şekilde olsun :

1. tablofakulteler

id fakulte_adi


2. tablobolumler

id fakulte_id bolum_adi


Şimdi sırasıyla dosyalarımız :

1. zcomdb(klasik ayar.php veya dbconn.php)

//db details
$dbHost = 'localhost';
$dbUsername = 'root';
$dbPassword = '';
$dbName = 'test';

//Connect and select the database
$db = new mysqli($dbHost, $dbUsername, $dbPassword, $dbName);

if ($db->connect_error) {
die("Connection failed: " . $db->connect_error);
}
?>



2. zajax.php (klasik ajax.php)


include('zcomdb.php');

if(isset($_POST["id"]) && !empty($_POST["id"])){
$query = $db->query("SELECT * FROM bolumler WHERE fakulte_id = ".$_POST['id']." AND bolum_adi IS NOT NULL ORDER BY bolum_adi ASC");


$rowCount = $query->num_rows;

if($rowCount > 0){
echo '';
while($row = $query->fetch_assoc()){
echo '';
}
}else{
echo '';
}
}

?>


3. zindex.php (klasik index.php)



Deneme








<script></script>
<script></script>
<script></script>


<script>
$(document).ready(function(){
$('#fakulte').on('change',function(){
var fakulteID = $(this).val();
if(fakulteID){
$.ajax({
type:'POST',
url:'zajax.php',
data:'id='+fakulteID,
success:function(html){
$('#bolum').html(html);
}
});
}else{
$('#bolum').html('');
}
});
});
</script>








Select box örneği





include('zcomdb.php');
$query = $db->query("SELECT * FROM fakulteler WHERE fakulte_adi IS NOT NULL ORDER BY fakulte_adi ASC");
$rowCount = $query->num_rows;
?>
















İyi forumlar.
 

 

wmaraci
reklam

murattkilinc murattkilinc www.instegral.com Kullanıcı
  • Üyelik 06.04.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad M** K**
  • Mesajlar 119
  • Beğeniler 7 / 15
  • Ticaret 0, (%0)



Bu hatayı alıyorum. Sebebi ne olabilir?
 

 

www.instegral.com

compost0x compost0x Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 26.05.2018
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Muğla
  • Ad Soyad A** Y**
  • Mesajlar 99
  • Beğeniler 23 / 19
  • Ticaret 2, (%50)
murattkilinc kullandıgın jquery yüzünden. Slim mi kullanıyorsun.
 

 

murattkilinc murattkilinc www.instegral.com Kullanıcı
  • Üyelik 06.04.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad M** K**
  • Mesajlar 119
  • Beğeniler 7 / 15
  • Ticaret 0, (%0)
compost0x


<script></script>

<script></script>


her ikisi de var html kodlarının içinde. slim olanı bootstrap'in modal özelliği için kullanmıştım.
 

 

www.instegral.com
wmaraci
wmaraci

compost0x compost0x Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 26.05.2018
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Muğla
  • Ad Soyad A** Y**
  • Mesajlar 99
  • Beğeniler 23 / 19
  • Ticaret 2, (%50)
murattkilinc slim i kaldırısan çalışacaktır, ikisinde zaten benzer classlar mevcut, çakışma yapar ayrıca
 

 

murattkilinc murattkilinc www.instegral.com Kullanıcı
  • Üyelik 06.04.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad M** K**
  • Mesajlar 119
  • Beğeniler 7 / 15
  • Ticaret 0, (%0)
compost0x slimi kaldırınca hata düzeldi. Bir sorun daha olacak.



include('zcomdb.php');

if(isset($_POST["id"]) && !empty($_POST["id"])){
$query = $db->query("SELECT * FROM bolumler WHERE fakulte_id = ".$_POST['id']." AND bolum_adi IS NOT NULL ORDER BY bolum_adi ASC");


$rowCount = $query->num_rows;

if($rowCount > 0){
echo '';
while($row = $query->fetch_assoc()){
echo '';
}
}else{
echo '';
}
}

?>


post ile id alamıyorum. ajax.php dosyasında

include_once 'connection.php';

$get_faculty = $_POST['graduated_faculty'];
$department_name='department_name';
$department_id='department_id';

$sql_department=mysqli_query($baglan,"SELECT * FROM mebis.UnitDepartment WHERE UnitDepartment.parent_id = $get_faculty");
if(mysqli_num_rows($sql_department)!=0) {

while($read_sql_department = mysqli_fetch_array($sql_department)) {
echo "";
}
}else{
echo '';
}

satırı ile veriyi çekmeye çalışıyorum. Fakat gelmiyor. $get_faculty = 1; diye tanımlarsam örneğin bu sefer bir sıkıntı çıkmıyor. Yani senin yazıya göre index.php seçilen fakülte id sini nasıl ajax.php ye yolluyor?
 

 

www.instegral.com

compost0x compost0x Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 26.05.2018
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Muğla
  • Ad Soyad A** Y**
  • Mesajlar 99
  • Beğeniler 23 / 19
  • Ticaret 2, (%50)
murattkilinc Bu gördüğün kısımda


<script>
$(document).ready(function(){
$('#fakulte').on('change',function(){
var fakulteID = $(this).val();
if(fakulteID){
$.ajax({
type:'POST',
url:'zajax.php',
data:'id='+fakulteID,
success:function(html){
$('#bolum').html(html);
}
});
}else{
$('#bolum').html('');
}
});
});
</script>



ve burada





seçimini yaptıktan sonra

$row['id'] kısmını şöyle yolluyoruzz :

$_POST['id']
-
 

 

compost0x compost0x Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 26.05.2018
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Muğla
  • Ad Soyad A** Y**
  • Mesajlar 99
  • Beğeniler 23 / 19
  • Ticaret 2, (%50)
murattkilinc anydesk ile özelden baglantı verebilrisen bakabiliriz
 

 

murattkilinc murattkilinc www.instegral.com Kullanıcı
  • Üyelik 06.04.2016
  • Yaş/Cinsiyet 33 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad M** K**
  • Mesajlar 119
  • Beğeniler 7 / 15
  • Ticaret 0, (%0)
compost0x sorun biraz kurcalayınca düzeldi. Çok teşekkürler
 

 

www.instegral.com
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al