PHP ile Veri Tabanından Veri Çekme

Categories PHP Kodlama, UncategorizedPosted on
PHP ile Veri Tabanından Veri Çekme

Merhaba, PHP İle MySQL veri tabanından nasıl veri çekebilirsiniz onu anlatacağım. PHP ile Veri Tabanından Veri Çekme

PHP ile Veri Tabanından Veri Çekme

Veritabanından veri çekmek için kullandığımız temel php fonksiyonlarına göz atacağız. Fonksiyonların akılda kalıcı olması için tek tablolu bir veritabanı tasarlayalım ve her bir fonksiyon için bu tablodan verileri nasıl çekip kullandığımıza bakalım.

İlk önce veritabanı tablomuzu tasarlayalım. ogrenci isimli tablomuzun sütun bilgileri ve içindeki veriler aşağıdaki gibi olsun.

 

 

Veritabanı tablomuzu oluşturduktan sonra gerekli bağlantıları yaptığımızı varsayarak devam ediyorum. Şimdi temel fonksiyonların ne iş yaptıklarına ve kullanımlarına bakalım.

Temel fonksiyonlar şunlardır:

  1. mysqli_fetch_row(): Sorgu sonuçları dizi tipinde geri döndürülür. Dizinin indis değerleri 0′ dan başlar ve sütun sayısı kadar devam eder.
  2. mysqli_fetch_assoc(): Sorgu sonuçları dizi tipinde geri döndürülür. Dizinin indis değerleri ise veritabanı tablomuzdaki sütun isimleridir.
  3. mysqli_fetch_array(): Sorgu sonuçları dizi tipinde geri döndürülür. Dizinin indis değerlerinin nasıl olacağı ise ikinci bir parametreyle belirlenir.
  4. mysqli_fetch_object(): Sorgu sonuçları nesne(object) tipinde geri döndürülür. Veritabanı tablomuzdaki sütun isimleri ile verilere erişiriz.

1) mysqli_fetch_row ()

Sorgu sonuçları dizi tipinde geri döndürülür. Dizinin indis değerleri 0′ dan başlar ve sütun sayısı kadar devam eder.

Örnek


1
2
3
4
5
6
7
8
9
10
<span class="pun">&lt;?</span><span class="pln">php
$sql</span><span class="pun">=</span><span class="str">"SELECT * FROM ogrenci"</span><span class="pun">;</span><span class="pln">
$sorgu</span><span class="pun">=</span><span class="pln">mysqli_query</span><span class="pun">(</span><span class="pln">$baglanti</span><span class="pun">,</span><span class="pln">$sql</span><span class="pun">);</span>
<span class="kwd">while</span><span class="pun">(</span><span class="pln"> $sonuc</span><span class="pun">=</span><span class="pln">mysqli_fetch_row</span><span class="pun">(</span><span class="pln">$sorgu</span><span class="pun">)</span> <span class="pun">){</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="lit">0</span><span class="pun">];</span>    <span class="com">// ogrID kolonu</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="lit">1</span><span class="pun">];</span>    <span class="com">// ogrAd kolonu </span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="lit">2</span><span class="pun">];</span>    <span class="com">// ogrSoyad kolonu</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="lit">3</span><span class="pun">];</span>    <span class="com">// ogrNo kolonu</span>
<span class="pun">}</span>
<span class="pun">?&gt;</span>
Yukarıdaki kod parçaçığında $baglanti değişkeni veritabanı bağlantımızı yaptığımız değişkendir. Bunun hazır olduğunu varsayarak buraya yazdığımıza dikkat edelim. Veritabanı bağlantısını nasıl yaptığımıza linkteki makalemden bakabilirsiniz. Makaleye gitmek için tıklayınız.

2) mysqli_fetch_assoc ()

Sorgu sonuçları dizi tipinde geri döndürülür. Dizinin indis değerleri ise veritabanı tablomuzdaki sütun isimleridir.

Örnek


1
2
3
4
5
6
7
8
9
10
<span class="pun">&lt;?</span><span class="pln">php
$sql</span><span class="pun">=</span><span class="str">"SELECT * FROM ogrenci"</span><span class="pun">;</span><span class="pln">
$sorgu</span><span class="pun">=</span><span class="pln">mysqli_query</span><span class="pun">(</span><span class="pln">$baglanti</span><span class="pun">,</span><span class="pln">$sql</span><span class="pun">);</span>
<span class="kwd">while</span><span class="pun">(</span><span class="pln"> $sonuc</span><span class="pun">=</span><span class="pln">mysqli_fetch_assoc</span><span class="pun">(</span><span class="pln">$sorgu</span><span class="pun">)</span> <span class="pun">){</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="str">"ogrID"</span><span class="pun">];</span>     <span class="com">// ogrID kolonu</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="str">"ogrAd"</span><span class="pun">];</span>     <span class="com">// ogrAd kolonu </span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="str">"ogrSoyad"</span><span class="pun">];</span>  <span class="com">// ogrSoyad kolonu</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="str">"ogrNo"</span><span class="pun">];</span>     <span class="com">// ogrNo kolonu</span>
<span class="pun">}</span>
<span class="pun">?&gt;</span>

3) mysqli_fetch_array ()

Sorgu sonuçları dizi tipinde geri döndürülür. Dizinin indis değerlerinin nasıl olacağı ise ikinci bir parametreyle belirlenir. İkinci parametre şunlar olabilir:

  • MYSQLI_ASSOC: Döndürülen dizi değişkeninde indis değerlerinin veritabanı tablosunun sütun isimlerinden oluşmasını sağlar. Varsayılan değerdir. Yani hiçbir şey yazılmazsa bu özellik kullanılır.
  • MYSQLI_NUM: Döndürülen dizi değişkeninde indis değerlerinin sayısal olmasını sağlar.
  • MYSQLI_BOTH: Döndürülen dizi değişkeninde indis değerlerinin hem sayısal hem de sütun isimleriyle birlikte oluşmasını sağlar.

Örnekler


1
2
3
4
5
6
7
8
9
10
11
12
13
<span class="pun">&lt;?</span><span class="pln">php
$sql</span><span class="pun">=</span><span class="str">"SELECT * FROM ogrenci"</span><span class="pun">;</span><span class="pln">
$sorgu</span><span class="pun">=</span><span class="pln">mysqli_query</span><span class="pun">(</span><span class="pln">$baglanti</span><span class="pun">,</span><span class="pln">$sql</span><span class="pun">);</span>
<span class="kwd">while</span><span class="pun">(</span><span class="pln"> $sonuc</span><span class="pun">=</span><span class="pln">mysqli_fetch_array</span><span class="pun">(</span><span class="pln">$sorgu</span><span class="pun">,</span><span class="pln">MYSQLI_ASSOC</span><span class="pun">)</span> <span class="pun">){</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="str">"ogrAd"</span><span class="pun">].</span><span class="str">' '</span><span class="pun">.</span><span class="pln">$sonuc</span><span class="pun">[</span><span class="str">"ogrSoyad"</span><span class="pun">].</span><span class="str">' '</span><span class="pun">.</span><span class="pln">$sonuc</span><span class="pun">[</span><span class="str">"ogrNo"</span><span class="pun">].</span><span class="str">'&lt;br&gt;'</span><span class="pun">;</span>
<span class="pun">}</span>
<span class="pun">?&gt;</span><span class="pln">

// Sonuç aşağıdaki gibidir.
// Cemal SÜREYYA 10
// Kamil DURDU 11
// Ayşe FATMA 12
// Fatma AYŞE 13</span>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<span class="pun">&lt;?</span><span class="pln">php
$sql</span><span class="pun">=</span><span class="str">"SELECT * FROM ogrenci"</span><span class="pun">;</span><span class="pln">
$sorgu</span><span class="pun">=</span><span class="pln">mysqli_query</span><span class="pun">(</span><span class="pln">$baglanti</span><span class="pun">,</span><span class="pln">$sql</span><span class="pun">);</span>
<span class="kwd">while</span><span class="pun">(</span><span class="pln"> $sonuc</span><span class="pun">=</span><span class="pln">mysqli_fetch_array</span><span class="pun">(</span><span class="pln">$sorgu</span><span class="pun">,</span><span class="pln">MYSQLI_NUM</span><span class="pun">)</span> <span class="pun">){</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="lit">0</span><span class="pun">].</span><span class="str">' '</span><span class="pun">.</span><span class="pln">$sonuc</span><span class="pun">[</span><span class="lit">1</span><span class="pun">].</span><span class="str">' '</span><span class="pun">.</span><span class="pln">$sonuc</span><span class="pun">[</span><span class="lit">2</span><span class="pun">].</span><span class="str">' '</span><span class="pun">.</span><span class="pln">$sonuc</span><span class="pun">[</span><span class="lit">3</span><span class="pun">].</span><span class="str">'&lt;br&gt;'</span><span class="pun">;</span>
<span class="pun">}</span>
<span class="pun">?&gt;</span><span class="pln">

// Sonuç aşağıdaki gibidir.
// Cemal SÜREYYA 10
// Kamil DURDU 11
// Ayşe FATMA 12
// Fatma AYŞE 13
</span>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<span class="pun">&lt;?</span><span class="pln">php
$sql</span><span class="pun">=</span><span class="str">"SELECT * FROM ogrenci"</span><span class="pun">;</span><span class="pln">
$sorgu</span><span class="pun">=</span><span class="pln">mysqli_query</span><span class="pun">(</span><span class="pln">$baglanti</span><span class="pun">,</span><span class="pln">$sql</span><span class="pun">);</span>
<span class="kwd">while</span><span class="pun">(</span><span class="pln"> $sonuc</span><span class="pun">=</span><span class="pln">mysqli_fetch_array</span><span class="pun">(</span><span class="pln">$sorgu</span><span class="pun">,</span><span class="pln">MYSQLI_BOTH</span><span class="pun">)</span> <span class="pun">){</span><span class="pln">
    echo $sonuc</span><span class="pun">[</span><span class="lit">1</span><span class="pun">].</span><span class="str">' '</span><span class="pun">.</span><span class="pln">$sonuc</span><span class="pun">[</span><span class="str">"ogrAd"</span><span class="pun">];</span>
    <span class="com">// ikisinin de aynı sonucu verdiğine dikkat edelim.</span>
<span class="pun">}</span>
<span class="pun">?&gt;</span><span class="pln">

// Sonuç aşağıdaki gibidir.
// Cemal SÜREYYA
// Kamil DURDU
// Ayşe FATMA
// Fatma AYŞE
</span>

4) mysqli_fetch_object ()

Sorgu sonuçları nesne(object) tipinde geri döndürülür. Veritabanı tablomuzdaki sütun isimleri ile verilere erişiriz.

Örnek


1
2
3
4
5
6
7
<span class="pun">&lt;?</span><span class="pln">php
$sql</span><span class="pun">=</span><span class="str">"SELECT * FROM ogrenci"</span><span class="pun">;</span><span class="pln">
$sorgu</span><span class="pun">=</span><span class="pln">mysqli_query</span><span class="pun">(</span><span class="pln">$baglanti</span><span class="pun">,</span><span class="pln">$sql</span><span class="pun">);</span>
<span class="kwd">while</span><span class="pun">(</span><span class="pln"> $sonuc</span><span class="pun">=</span><span class="pln">mysqli_fetch_object</span><span class="pun">(</span><span class="pln">$sorgu</span><span class="pun">)</span> <span class="pun">){</span><span class="pln">
    echo $sonuc</span><span class="pun">-&gt;</span><span class="pln">ogrAd</span><span class="pun">.</span><span class="str">' '</span><span class="pun">.</span><span class="pln">$sonuc</span><span class="pun">-&gt;</span><span class="pln">ogrSoyad</span><span class="pun">.</span><span class="str">'&lt;br&gt;'</span><span class="pun">;</span>
<span class="pun">}</span>
<span class="pun">?&gt;</span>

1
2
3
4
5
6
<span class="pln">// Sonuç aşağıdaki gibidir.
// Cemal SÜREYYA
// Kamil DURDU
// Ayşe FATMA
// Fatma AYŞE
</span>

1
 

4 comments

  1. Güzel kaynak semih hocam. teşekkür ederiz.
    video uygulamalı dersleriniz vardı. Tekrar etmeyi düşünüyormusunuz?

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir