Php de GET ve POST metodu php için çok önemli bir konudur. Aslında sadece php için değil web ile doğrudan veya dolaylı olarak ilgilenen her programcının bilmesi gereken konulardır, uzun zamandır yazmayı düşünüyodım ama bugüne nasipmiş 
Neden her programcı? Mesela python ile ile bir veri çekme tabanlı script hazırlıyoruz, bazen direkt sayfaya erişerek, bazen de üye girişi yaparak. İşte bu durumda get ve post metodlarını mutlaka kullanıyoruz. Sonuçta internet ortamı client-server ilişkisidir, yani istemci-sunucu. İstemci istekte bulunur, sunucu ise o isteği cevaplar. Tabi her zaman cevaplaması şart değil, bu sunucudaki adamın bileceği iştir
Genelde bir video veya bir sitenin ana sayfasını çekerken GET kullanılır, üye girişlerinde veya benzer form gönderme işlerinde ise POST.. Ama duruma göre değişebilir olsa da genel olarak yaygın kullanım bu şekildedir.
Peki biz elimizdekilerle sayfaya Get ve Post isteklerinde bulunurken istekte bulunduğumuz o sayfada neler oluyor? Hiç merak ettiniz mi, bence python gibi programlama diliyle ilgilenenlerin çoğu merak etmez, onlar sayfadan çektiği veriye bakarlar
Ama sayfayı yayınlayan web server için durum öyle değildir, onlar da gelen istekleri ne şekilde geri göndereceğine bakarlar. Bu isteğin metodu ve verilerin güvenliği gibi durumları baz alırlar. Aynı zamanda kendileri de başka sayfalarla iletişim kurabilirler de tabiki. Fazla uzatmadan GET metodula başlayalım, bakalım bir sunucuya istekte bulunduğumuz php sayfası temel olarak ne şekilde oluyor...
GET METODU:
Bu aslında bizim tarayıcının adres satırına girerek direkt olarak adresi yazıp enter yapmamızdır, neticede tarayıcı da python gibi bir istemcidir, sadece program haline getirilmiştir
Adres satırına girerek "http://qpython.club/" yazmamız aslında bir GET istediğidir. Otomatik olarak index sayfasına yönlendirilir ve index.php çıkar ana sayfa olarak. Ama bazen bununla da kalmaz bunun yanında anahtar ve değer de girebiliriz. Örneğin;
http://qpython.club/index.php?anahtar=deger
bazen anahtar ve değerler birden fazla olabilir, bu durumda "&" ile ayırırız
http://qpython.club/index.php?anahtar=deger&anahtar2=deger2
Php kodlarında bu metod "$_GET" değişkeni adında bir array ile ifade edilir. $_GET dizisindeki anahtar isimleri sunucu tarafında biz belirleriz, diyelim ki "isim" adında bir anahtar oluşturmak istiyoruz, bu isimin değerini şu şekilde işleme alırız;
ifadesi bize "isim" in değerini verir.
anlaşılır olması için de bunu "$isim" adında bir değişkene atayalım,
sunucuya bir get isteği geldiğinde "isim" adında bir anahtarın değerini artık alabiliriz. İstersek bunu veritabanına işleriz, dosya açıp içine yazdırırız veya istersek de buna bir cevap yazabiliriz. O halde daha iyi kavrayabilmek için diyelim ki karşıda bir pythoncu var ve urllib2 ile istek gönderiyor,
python istemci:
örnekteki gibi isim adında bir anahtarı varsa ona göre bir cevap gönderebiliriz. if isset ile isim adında get anahtarı varsa işleme sokmak için şu şekilde hazırlayabiliriz
php sunucu:
karşıdaki pythoncu print dediğinde cevabı,
>>>senin adin yavuz mu?
şeklinde alacaktır.
Eğer get anahtarları birden fazla ise de durum benzer olacaktır.
python istemci:
php sunucu:
>>>senin adin yavuz cetin mi?
istersek koşul, cevap ve veri işlemede değişikler yapılır.
POST METODU:
http://qpython.club/showthread.php?tid=1233

Neden her programcı? Mesela python ile ile bir veri çekme tabanlı script hazırlıyoruz, bazen direkt sayfaya erişerek, bazen de üye girişi yaparak. İşte bu durumda get ve post metodlarını mutlaka kullanıyoruz. Sonuçta internet ortamı client-server ilişkisidir, yani istemci-sunucu. İstemci istekte bulunur, sunucu ise o isteği cevaplar. Tabi her zaman cevaplaması şart değil, bu sunucudaki adamın bileceği iştir

Genelde bir video veya bir sitenin ana sayfasını çekerken GET kullanılır, üye girişlerinde veya benzer form gönderme işlerinde ise POST.. Ama duruma göre değişebilir olsa da genel olarak yaygın kullanım bu şekildedir.
Peki biz elimizdekilerle sayfaya Get ve Post isteklerinde bulunurken istekte bulunduğumuz o sayfada neler oluyor? Hiç merak ettiniz mi, bence python gibi programlama diliyle ilgilenenlerin çoğu merak etmez, onlar sayfadan çektiği veriye bakarlar

GET METODU:
Bu aslında bizim tarayıcının adres satırına girerek direkt olarak adresi yazıp enter yapmamızdır, neticede tarayıcı da python gibi bir istemcidir, sadece program haline getirilmiştir

http://qpython.club/index.php?anahtar=deger
bazen anahtar ve değerler birden fazla olabilir, bu durumda "&" ile ayırırız
http://qpython.club/index.php?anahtar=deger&anahtar2=deger2
Php kodlarında bu metod "$_GET" değişkeni adında bir array ile ifade edilir. $_GET dizisindeki anahtar isimleri sunucu tarafında biz belirleriz, diyelim ki "isim" adında bir anahtar oluşturmak istiyoruz, bu isimin değerini şu şekilde işleme alırız;
PHP Kod:
$_GET['isim'];
ifadesi bize "isim" in değerini verir.
anlaşılır olması için de bunu "$isim" adında bir değişkene atayalım,
PHP Kod:
$isim = $_GET['isim'];
sunucuya bir get isteği geldiğinde "isim" adında bir anahtarın değerini artık alabiliriz. İstersek bunu veritabanına işleriz, dosya açıp içine yazdırırız veya istersek de buna bir cevap yazabiliriz. O halde daha iyi kavrayabilmek için diyelim ki karşıda bir pythoncu var ve urllib2 ile istek gönderiyor,
python istemci:
PHP Kod:
import urllib2
istek = urllib2.urlopen("http://phpsayfasi.net/index.php?isim=yavuz")
print istek.read()
örnekteki gibi isim adında bir anahtarı varsa ona göre bir cevap gönderebiliriz. if isset ile isim adında get anahtarı varsa işleme sokmak için şu şekilde hazırlayabiliriz
php sunucu:
PHP Kod:
<?php
if (isset($_GET['isim']))
{
$isim = $_GET['isim'];
$cevap = "senin adin $isim mu?";
echo $cevap;
}
?>
karşıdaki pythoncu print dediğinde cevabı,
>>>senin adin yavuz mu?
şeklinde alacaktır.
Eğer get anahtarları birden fazla ise de durum benzer olacaktır.
python istemci:
PHP Kod:
import urllib2
istek = urllib2.urlopen("http://phpsayfasi.net/index.php?isim=yavuz&soyisim=cetin")
print istek.read()
php sunucu:
PHP Kod:
<?php
if (isset($_GET['isim']) && isset($_GET['soyisim']))
{
$isim = $_GET['isim'];
$soyisim = $_GET['soyisim'];
$cevap = "senin adin $isim $soyisim mi?";
echo $cevap;
}
?>
>>>senin adin yavuz cetin mi?
istersek koşul, cevap ve veri işlemede değişikler yapılır.
POST METODU:
http://qpython.club/showthread.php?tid=1233
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club