Hoşgeldin, Ziyaretçi:

l Üye Ol

Facebook ile Giriş
Tarih: 23-10-2018, Saat: 12:28
  • http://qpython.club'e Hoşgeldiniz!
  • Forum Kurallarını okumayı unutmayınız.
  • İyi Forumlar...
  • Python Kodları
  • qpython.club Adresimiz Aktiftir...


USD: ---      EUR: ---      BTC: ---

Python Kodları > Programlama Dilleri > PHP > POST metodu >

 Yorum: 5    Görüntülenme: 275
Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
07-08-2018, Saat: 22:30, (Son Düzenleme: 07-08-2018, Saat: 23:00, Düzenleyen: gecemor.)
Çevrimdışı
Admin
Admin Grubu
Üyelik Tarihi: 02-02-2016
Mesajlar : 5,836
Konular:
Rep Puanı: 102
#1
POST metodu

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...
(Son Düzenleme: 07-08-2018, Saat: 23:00, Düzenleyen: gecemor.)
07-08-2018, Saat: 22:30
Cevapla
07-08-2018, Saat: 22:38,
Çevrimdışı
Geliştirici Üye
Developer
Üyelik Tarihi: 06-03-2016
Mesajlar : 1,274
Konular:
Rep Puanı: 34
#2
RE: POST metodu

Klavyene sağlık Smile araya Python'ı iliştirmen iyi olmuş Big Grin
07-08-2018, Saat: 22:38
Cevapla
07-08-2018, Saat: 23:01,
Çevrimdışı
Admin
Admin Grubu
Üyelik Tarihi: 02-02-2016
Mesajlar : 5,836
Konular:
Rep Puanı: 102
#3
Cvp: POST metodu

teşekkürler, evet madem python forumuyuz bari o da olsun dedim Smile
07-08-2018, Saat: 23:01
Cevapla
09-08-2018, Saat: 03:12,
Çevrimdışı
Haydalar Olsun
Süper Moderatör Grubu
Üyelik Tarihi: 04-02-2016
Mesajlar : 659
Konular:
Rep Puanı: 4
#4
Cvp: POST metodu

Emre abi çaktırmadan gitarist Yavuz Çetin abiyi anmışsın.
09-08-2018, Saat: 03:12
Cevapla
09-08-2018, Saat: 10:12,
Çevrimdışı
Admin
Admin Grubu
Üyelik Tarihi: 02-02-2016
Mesajlar : 5,836
Konular:
Rep Puanı: 102
#5
Cvp: POST metodu

İlk konuya başladığımda Yavuz Çetin dinleyip nostaji yapıyodum Smile
09-08-2018, Saat: 10:12
Cevapla
10-08-2018, Saat: 18:04,
Çevrimdışı
Yeni Üye
Üye Grubu
Üyelik Tarihi: 06-08-2018
Mesajlar : 15
Konular:
Rep Puanı: 0
#6
RE: POST metodu

Çok teşekkürler hocam anlatım için.
10-08-2018, Saat: 18:04
Cevapla
« Önceki Konu | Sonraki Konu »
Konuyu Okuyanlar: 1 Ziyaretçi



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

Hızlı Menü:

Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB
© 2002-2018 MyBB Group.
ImAdige theme by IMADIGE © 2015.