Mysql veri tabanındaki verileri PHP ile görüntülemek için mysqli_query sorgusu (sql cümlesi) ile beraber mysql_fetch_assoc fonksiyonu kullanılır. Bu kullanımda sorgu cümlesi ile ilgili tabloya bağlanılır ve mysql_fetch_assoc ile tablodaki veriler satır satır dizi şekline getirilir.. Tabi öncelikle veri tabanı bağlantısının yapılmış olması gerekir ($baglanti).
//veri tabanına bağlantı
$baglanti=mysqli_conect("localhost","root","","veritabanı adı");
mysqli_set_charset($baglanti, "utf8mb4");
//verilerin listelenmesi
$sql="select * from tablo_adi"; // sql cümlesi
$veriler=mysqli_query($baglanti, $sql); // verilerin çekilmesi
while ($veri=mysqli_fetch_assoc($veriler) { //verilerin görüntülenmesi
echo $veri["sütun1];
echo $veri["sütun2"];
.
.
.
}
Yukarıda;
sitevt adında bir veri tabanınımızın olduğunu ve içindeki mesajlar tablosu'nun içeriğinin aşağıdaki gibi olduğunu düşünelim.
Tabloda id, ad_soyad,mesaj ve tarih olmak üzere 4 alanımız var.. Öncelikle Bu veri tabanına bağlanmak için , veri eklerken yaptığımız gibi veri tabanı bağlansını kurmamız gerekiyor..
$baglanti=mysqli_connect("localhost","root","","sitevt");
mysqli_set_charset($baglanti, "utf8mb4");
Yukarıdaki bağlantıyı verileri görüntüleyeceğimiz sayfanın başına include ediyoruz..
mesajlar.php
<?php include ("baglan.php"); ?>
Mysql veri tabanındaki verileri görüntülemek için önce verileri seçip ,veri tabannındn çekmemiz gerekiyor. Bunun içinde select * from table cümlesi ile tüm kayıtlara bağlanıp while döngüsü kullanıyoruz. select --> seç * --> herşeyi from table --> tablodan
<?php
include ("baglan.php");
$sql=("select * from uyeler");
$mesajlar=mysqli_query($baglanti,$sql);
?>
Yukarıdaki cümle ile, mesajlar tablosundaki tüm mesajlar bir dizi halinde $mesajlar değişkenine alınmış olur. Burada yıldız yerine sadece istediğimiz alanlarıda yazabiliriz. O zaman sadece seçtiğimiz alan bilgilerini almış oluruz.
<?php
include ("baglan.php");
$sql=mysqli_query("select ad_soyad,mesaj from mesajlar");
$mesajlar=mysqli_query($baglanti,$sql);
?>
Yukarıdaki cümle ile mesajlar tablosundaki verilerden sadece ad_soyad ve mesaj alanlarındaki bilgileri almış oluyoruz. Ama biz bu derste tüm mesaj verilerini kullanacağımız için "*" işaretinni kullanacağız. Dizideki kayıt sayısını ise mysqli_num_rows ile öğrenebiliriz.
<?php
include ("baglan.php");
$sql=("select * from uyeler");
$mesajlar=mysqli_query($baglanti,$sql);
$toplam_mesaj=mysqli_num_rows($mesajlar); // kayıt sayısı
?>
Tablodaki toplam kayıt sayısı $toplam_mesaj değişkenine aktarılmış olur. Sayfada istediğimiz yere yazdırabiliriz.
Kayıtları döngü içerisinde tek tek almak için ise yukarıda yazdığım gibi while döngüsü ve mysql_fetch_assoc yapısını kullanacağız.
<meta charset="utf-8">
<?php
include ("baglan.php");
$sql=("select * from uyeler");
$mesajlar=mysqli_query($baglanti,$sql); // tüm mesajlar i seçildi
$toplam_mesaj=mysqli_num_rows($mesajlar); // mesaj sayısı
echo "<h3>Toplam ".$toplam_mesaj." Üye</h3>";
while($mesaj=mysqli_fetch_assoc($mesajlar)) {
echo $mesaj["id"]." ";
echo $mesaj["ad_soyad"]." ";
echo $mesaj["mesaj"]." ";
echo $mesaj["tarih"]." <br>";
}
?>
mysql_fetch_assoc ile tablodaki satırlar tek tek $mesaj dizi değişkenine aktarııyor. while döngüsü içinde olduğu yapıldığından , tüm kayıtlar döngü içerisinde sırayla alınmış olur. PHP dizilerinde dizi içeriğini yazdırmak için $dizi["alan"] yapısı kullanılır. Dolayısıyla bu şekilde her kaydın (satırın yada mesajın) bilgilerini tek tek alıp yazdırmış oluyoruz. Kodlar çalıştığında, mesajlar.php sayfasının ekran görüntüsü aşağıdaki gibi olacaktır.
Türkçe karakterlerin düzgün görüntülenebilmesi için sayfaya meta etiketi eklemeyi unutmayın... Verileri alabilmeyi öğrendikten sonra, sayfa ve çalışmanıza uygun şekillerde istediğiniz gibi kullanabilirsiniz..
Toplam 33 Makale
Lütfen yorumlarınızda saygılı, yapıcı ve anlaşılır bir dil kullanın.
Küfür, hakaret ya da spam içerikler onaylanmaz.