Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
POST metodu
#1
Daha önce bu konuda get metodunu anlatmıştım, amacım post da anlatmak olduğu için kaldığım yerden devam ediyorum.

POST metudumuz ise GET metodundan biraz daha farklı ama her ikisinde de sunucuya bir veri gönderiyoruz. Sunucudaki php kodlarımız aşağıdaki gibi olsun, bu sefer "username" ve "password" olarak iki tane post anahtarını işleme sokmak isteyelim. 

Anahtarların değerlerini değişkene atarken kullanmamız gereken "$_POST" ibaresidir, hatırlarlasanız GET için "$_GET" kullanmıştık

Dolayısıyla işleme sokacağımız değişkenler şu şekilde olacaktır.


PHP Kod:
$_POST["username"];
$_POST["password"]; 



Bunları da kendi anahtar isimlerine denk gelen bir değişken ile kısaca tanımlamak için atayabiliriz.

PHP Kod:
$username $_POST["username"];
$password $_POST["password"]; 



gelelim yine sunucuda bunları nasıl işleyeceğimize, "yavuz" adında bir username olsun ve şifresi de "cetin" olsun. Eğer username ve password bizi php sayfamızdakiyle eşleşirse karşıya "giris basarili" mesajı gitsin eğer eşleşmezse "basarisiz giris" mesajı gitsin. Sayfamızın adı da "login.php" olsun (örn; "http://adres.com/login.php" gibi olabilir).


PHP Kod:
<?php

if (isset($_POST['username']) && isset($_POST['passeword']))
{
    $username $_POST["username"];
    $password $_POST["password"];

    if ($username == "yavuz" && $password == "cetin")
    {
        echo "giris basarili";
    }
 
   else
    
{
 
       echo "basarisiz giris";
 
   }
}

?>


Göründüğü sunucu tarafında GET ile arasında pek fark, ama POST ile asıl far isteğin göderilme aşamasıdır. Bu isteği gönderirken HTML ile nasıl bir işlem yapılıyor görelim
PHP Kod:
<html>
 
 <body>

 
   <form action="login.php" method="POST">
 
     <input type="input" name="username" />
 
     <input type="password" name="password" />
 
     <input type="submit" />
 
   </form>

 
 </body>
</
html  

burda ki "form" verilerini girerken "input" oluşturduk ama "name" karşılığına yazdığımız php sayfamızdaki "$_POST" değişkene yeni bir array ekleyeceği için "username" ve "password" olmasına dikkat ettik. Eğer name karşılıkları "selam" gibi bir şey olsaydı bu $_POST["selam"] değişkenine denk gelecekti ve inputlara kullanıcının gireceği değer bunun karşılığı olacaktı.

Peki Python ile istek göndermek istersek?
o zaman python kullanıcılarına "urllib2" ve "requests" modulleri ile iki örnek vermek istiyorum

urllib2 modülü ile:
PHP Kod:
import urllib2
import urllib

# burda giden post data urlencode yapilmak zorunda
# ve de json formatinda gondermemiz gerekiyor
data urllib.urlencode({"username""yavuz""password""cetin"})

istek urllib2.urlopen("http://siteadi.com/login.php"data)

print 
istek.read() 


requests modulu ile:
PHP Kod:
import requests

# gordugunuz gibi requests ile urlencode yapmamiza gerek yok
data = {"username""yavuz""password""cetin"}

istek requests.post("http://siteadi.com/login.php"data=data)

print 
istek.content 

peki nedir POST metodunun farkı?
  • Post ile verilerimiz get'e göre daha güvenli gider (mesela tarayıcı adres satırında veriler görünmez)
  • Get ile gönderdiğimiz veri sınırlıdır ama Post ile öyle bir sınırımız yoktur. 
gibi başlıca farkları saymak bence 

GET ve POST metodlarını en basit işlemleriyle anlatmaya çalıştım, umarım yolun başında olan arkadaşlara faydalı olur. Anlamadığınız yerleri de sormaktan çekinmeyin, zira kimsenin ana dili programlama değil Smile

iyi forumlar...
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#2
Klavyene sağlık Smile araya Python'ı iliştirmen iyi olmuş Big Grin
Ara
Cevapla
#3
teşekkürler, evet madem python forumuyuz bari o da olsun dedim Smile
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#4
Emre abi çaktırmadan gitarist Yavuz Çetin abiyi anmışsın.
Ara
Cevapla
#5
İlk konuya başladığımda Yavuz Çetin dinleyip nostaji yapıyodum Smile
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#6
Çok teşekkürler hocam anlatım için.
Ara
Cevapla

{lang: 'en'}


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  GET ve POST Metodları gecemor 4 3,647 07-08-2018, Saat: 22:32
Son Yorum: gecemor

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi
Change Theme