Sol Reklam

Web Programlama - Php [Öğretici] - Ep. 5 (GET VE POST)

Pikod

Bir Kömür Göründü Kaptanım!

Discord:

Pikod#5894

Katılım
28 Kasım 2019
Mesajlar
118
Elmaslar
64
Puanlar
2.245
Minecraft
Pikod
Twitter
hzpikod
Arkadaşlar bu gün 2. konu açışım.
Eleştirip düzeltmemi sağlayanlara son derece teşekkür ediyorum.
Ancak bazı kişiler (kendisini bilir) derslere yorum konusunda emeğimi hiçe sayarak hatalarımdan dolayı "bundan bir şey olmaz" tarzı şeyler ima ediyorlar.
Bunu yapacakları uyarıyorum.
Ben Haşa Allah olmadığım için yanlışlarım olacaktır.
Bu yeterli olacaktır sanıyorum.

Şimdi derse geçiyorum.

Get ve Post veri alma metodlarıdır diyebiliriz.
Önceki ders gibi ikisinide açıklayacağım ilk olarak.
GET
Bu metod ile veri çekilmesine bir çok kez tanık olmuşsunuzdur

Linklerde gördüğünüz metod get metodudur.
Linklerden veri çekmeye yarar.
Şu şekilde çalışır:
www.****.com/merhaba.php?veri_ismi=veri_degeri&ikinci_veri_ismi=ikinci_veri_degeri

POST
Günlük internet gezintilerimizde ne kadar çok kullanılsada hiç farketmiyoruz.
Siz her butona bastığınızda javascript aracılığıyla bir siteye bir kaç siteye post veriler gönderiliyor.
Post veriler kullanıcıya tam olarak gösterilmiyor.
Sağ tık > İncele > Network
bölümünde post ile aktarılan verileri "xhr" kategorisinde görebilirsiniz.
Post veri göndermek için tarayıcıyı kullanmalı veya SUBMIT butonları ile göndermelisiniz.
Nedir submit butonları?

Html de yaptığınız bir form örneğin:

HTML:
<form>
        <input type="text" name="kAdi" placeholder="Kullanıcı Adı">
        <input type="password" name="pwd" placeholder="Parola">
        <input type="submit" value="Giriş Yap">
</form>

Formun submit butonuna bastığınızda değerleri belirlediğiniz metoda göre gönderir.
Metod şu şekilde belirleniyor:
<form method="POST"></form>
Eğer metod girmezseniz GET metodu ile gönderecektir.
Göndereceği sayfayıda <form action="girisKontrol.php"> </form>
şeklinde seçebilirsiniz.

Gelelim php'de GET VE POST metodlarıyla gönderilen verileri nasıl alırız?

$_GET
$_POST
değişkenleri bize sayfamıza gelen get ve post metodlu değerleri array halinde gönderecektir.
Session dersinden hatırlayabileceğiniz gibi şu şekilde arrayden bir veri çekebiliriz:
$_GET['merhaba'];
bu demektir ki GET gelen verilerdeki merhaba değerini çek.

Şimdi değer yoksa ne olacak?
PHP hata verecektir.
Hata mesajlarını göstermemesi için isset ile istediğimiz değerin gelip gelmediğini kontrol etmeliyiz.
Örneğin:

PHP:
if(isset($_GET['kullanici_adi']) == true){
    //EĞER == TRUE kısmını yazmazsanız da döngü sorunsuz çalışacaktır.
    //Çünkü php ve bütün programlama dillerinde tüm döngüler true varsa çalışır false varsa çalışmaz.
    //ve isset'de boolean yani true false döndüren bir fonksiyon olduğu için. Eğer kullanıcı adı set olduysa
    //döngü çalışacaktır.
}

if(!isset($_GET['kullanici_adi'])){
    //Burada da ! koyduk başına. Bu şu anlama geliyor eğer false ise döngüyü çalıştır.
}

Eğer bu tarzda bir kullanım yaparsak. Değer gelmiş ise değeri çekmeye çalışırız.
Yani hataların önüne geçmiş oluruz.

Ödev:
w3schools.com sitesini kullanarak form dökümanlarını inceleyin.
Form nasıl oluşturulur?
Formlar nasıl kullanılır?
Form argümentleri nelerdir?

Sonrasında bu bilgiler ile basit bir üye giriş sitesi yapın.
Post veya get kullanarak bilgileri çekin.
Bunu yapamayanlar olacaktır.
Bunun için sonraki ders anlatıcam nasıl yapılacağını.
NOT: eğer action kısmına bir şey girmezseniz formun olduğu sayfaya gönderecektir verileri.
 

patrick2dev

ölü.
Katılım
11 Aralık 2017
Mesajlar
815
Elmaslar
733
Puanlar
8.305
Arkadaşlar bu gün 2. konu açışım.
Eleştirip düzeltmemi sağlayanlara son derece teşekkür ediyorum.
Ancak bazı kişiler (kendisini bilir) derslere yorum konusunda emeğimi hiçe sayarak hatalarımdan dolayı "bundan bir şey olmaz" tarzı şeyler ima ediyorlar.
Bunu yapacakları uyarıyorum.
Ben Haşa Allah olmadığım için yanlışlarım olacaktır.
Bu yeterli olacaktır sanıyorum.

Şimdi derse geçiyorum.

Get ve Post veri alma metodlarıdır diyebiliriz.
Önceki ders gibi ikisinide açıklayacağım ilk olarak.
GET
Bu metod ile veri çekilmesine bir çok kez tanık olmuşsunuzdur

Linklerde gördüğünüz metod get metodudur.
Linklerden veri çekmeye yarar.
Şu şekilde çalışır:
www.****.com/merhaba.php?veri_ismi=veri_degeri&ikinci_veri_ismi=ikinci_veri_degeri

POST
Günlük internet gezintilerimizde ne kadar çok kullanılsada hiç farketmiyoruz.
Siz her butona bastığınızda javascript aracılığıyla bir siteye bir kaç siteye post veriler gönderiliyor.
Post veriler kullanıcıya tam olarak gösterilmiyor.
Sağ tık > İncele > Network
bölümünde post ile aktarılan verileri "xhr" kategorisinde görebilirsiniz.
Post veri göndermek için tarayıcıyı kullanmalı veya SUBMIT butonları ile göndermelisiniz.
Nedir submit butonları?

Html de yaptığınız bir form örneğin:

HTML:
<form>
        <input type="text" name="kAdi" placeholder="Kullanıcı Adı">
        <input type="password" name="pwd" placeholder="Parola">
        <input type="submit" value="Giriş Yap">
</form>

Formun submit butonuna bastığınızda değerleri belirlediğiniz metoda göre gönderir.
Metod şu şekilde belirleniyor:
<form method="POST"></form>
Eğer metod girmezseniz GET metodu ile gönderecektir.
Göndereceği sayfayıda <form action="girisKontrol.php"> </form>
şeklinde seçebilirsiniz.

Gelelim php'de GET VE POST metodlarıyla gönderilen verileri nasıl alırız?

$_GET
$_POST
değişkenleri bize sayfamıza gelen get ve post metodlu değerleri array halinde gönderecektir.
Session dersinden hatırlayabileceğiniz gibi şu şekilde arrayden bir veri çekebiliriz:
$_GET['merhaba'];
bu demektir ki GET gelen verilerdeki merhaba değerini çek.

Şimdi değer yoksa ne olacak?
PHP hata verecektir.
Hata mesajlarını göstermemesi için isset ile istediğimiz değerin gelip gelmediğini kontrol etmeliyiz.
Örneğin:

PHP:
if(isset($_GET['kullanici_adi']) == true){
    //EĞER == TRUE kısmını yazmazsanız da döngü sorunsuz çalışacaktır.
    //Çünkü php ve bütün programlama dillerinde tüm döngüler true varsa çalışır false varsa çalışmaz.
    //ve isset'de boolean yani true false döndüren bir fonksiyon olduğu için. Eğer kullanıcı adı set olduysa
    //döngü çalışacaktır.
}

if(!isset($_GET['kullanici_adi'])){
    //Burada da ! koyduk başına. Bu şu anlama geliyor eğer false ise döngüyü çalıştır.
}

Eğer bu tarzda bir kullanım yaparsak. Değer gelmiş ise değeri çekmeye çalışırız.
Yani hataların önüne geçmiş oluruz.

Ödev:
w3schools.com sitesini kullanarak form dökümanlarını inceleyin.
Form nasıl oluşturulur?
Formlar nasıl kullanılır?
Form argümentleri nelerdir?

Sonrasında bu bilgiler ile basit bir üye giriş sitesi yapın.
Post veya get kullanarak bilgileri çekin.
Bunu yapamayanlar olacaktır.
Bunun için sonraki ders anlatıcam nasıl yapılacağını.
NOT: eğer action kısmına bir şey girmezseniz formun olduğu sayfaya gönderecektir verileri.
isset'e gerek yok;
PHP:
if (@$_GET['getVal'] == true)
 
S

Silinen üye 79251

Ziyaretçi

Bu 5 ders sonucunda PHP kodlama dili hakkında oldukça bilgi sahibi oldum. En azından giriş seviyesini aştığımı düşünüyorum.
 

Pikod

Bir Kömür Göründü Kaptanım!

Discord:

Pikod#5894

Katılım
28 Kasım 2019
Mesajlar
118
Elmaslar
64
Puanlar
2.245
Minecraft
Pikod
Twitter
hzpikod

Bu 5 ders sonucunda PHP kodlama dili hakkında oldukça bilgi sahibi oldum. En azından giriş seviyesini aştığımı düşünüyorum.
Ne kadar sevindim bilemezsiniz. Umarım fayda sağlar devamı da.
 
Neden altınlarını Discord sunucumuzda kazmıyorsun? TIKLA VE KATIL!
Yukarı