- Katılım
- 30 Eki 2016
- Mesajlar
- 6,910
- Beğeniler
- 12
- Puanları
- 18,020
- Konum
- Zonguldak
- Ad Soyad
- Turhan Karabulut
- Meslek
- Emlak
- Yaş
- 45
Merhaba arkadaşlar bu konumuzda PHPde AJAX kullanımına devam ediyoruz. AJAX ile anlık olarak dizi içerisinde arama yapabileceğimiz kodu bir önceki konumuzda paylaşmıştık. Bu konumuzda ise yine anlık olarak veritabanından veri getireceğiz.
Gerekli kodlara konu içerisinden ulaşabilirsiniz.
Örneğimizde kullanıcı veritabanından bir isim seçer ve bu seçilen isim ile ilgili veritabanından kullanıcı bilgisi getirir.
config.php Dosyası
Bu dosyamızda veritabanımız ile bağlantı yapıyoruz.
PHP:
<?PHP
$SERVERNAME = "localhost";
$USERNAME = "root";
$PASSWOD = "";
$DATABASE = "veritabani";
TRY{
$BAGLAN = NEW PDO("mysql:host=$SERVERNAME;dbname=$DATABASE", $USERNAME,$PASSWOD);
$BAGLAN->exec("SET CHARACTER SET utf8");
$BAGLAN->query("SET NAMES 'utf8'");
$BAGLAN -> setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
}CATCH(PDOExeption $E){
ECHO "Bağlantı Hatası : " . $E->getMessage();
}
?>
index.php Dosyası
Bu dosyamızda veritabanındaki isimleri listeliyor ve AJAX yardımı ile kullanıcının seçtiği değeri kullanicilar.php dosyasına id olarak get atıyoruz.
HTML:
<?PHP INCLUDE_ONCE('config.php'); ?>
<html>
<meta charset="utf-8">
<head>
<script>
function vt_kullanicilar(arg){
if(arg == ""){
document.getElementById("sonuc").innerHTML = "";
return;
}else{
if(window.XMLHttpRequest){
// Chrome, Opera, Safer gibi tarayicilar için.
xmlhttp = new XMLHttpRequest();
}else{
// IE5 ve IE6 Tarayıcıları için..
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function(){
if (this.readyState == 4 && this.status == 200) {
document.getElementById("sonuc").innerHTML = this.responseText;
}
}
xmlhttp.open("GET","kullanicilar.php?id="+arg,true);
xmlhttp.send();
}
}
</script>
</head>
<body>
<form>
<select name="id" onchange="vt_kullanicilar(this.value)">
<?PHP
$query = $BAGLAN->query("SELECT * FROM kullanicilar", PDO::FETCH_ASSOC);
IF($query->rowCount()){
FOREACH($query as $A){
ECHO '<option value="'.$A['id'].'">'.$A['kull_adi'].'</option>';
}
}
?>
</select>
</form>
<div id="sonuc">Sonuçlar Görüntülenecek</div>
</body>
</html>
kullanicilar.php Dosyası
GET metodu ile gelen id değerini yakalıyor ve veritabanında bu id sahip kullanıcı bilgisini çekiyoruz.
PHP:
<?PHP
INCLUDE_ONCE('config.php');
$ID = $_GET['id'];
$query = $BAGLAN->query("SELECT * FROM kullanicilar WHERE ID = $ID")->FETCH(PDO::FETCH_ASSOC);
ECHO $query['kull_info'];
?>