Php -Get ve Post metodları ile formdan gelen veriyi alma

PHP’de formdan veri almak için kullanılan iki yöntem vardır. GET ve POST.
POST metodunda gönderilen bilgi bir daha kullanıcı tarafından görülemez. Ancak GET metodunda bilgi adres çubuğunda görülür ve müdahale edilebilir. Bu da güvenlik açıklarına sebep olabilir.

POST Metodu Örnek :

Formumuzu oluşturalım. Formumuzun method özelliğini post, action özelliğini post.php olarak ayarlıyorum.

[php]

<code><form method="post" action="post.php">
<table>
<tr>
<td>Ad</td>
<td><input type="text" name="ad" /></td>
</tr>
<tr>
<td>Şifre</td>
<td><input type="password" name="sifre" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Gönder" /></td>
</tr>
</table>
</form></code>

[/php]

post.php içerigi

input name özelliğini $_POST[“input name”] şeklinde yazarak veriye ulaşıyorum.

[php]</code>

<code><?php
echo "Kullanıcı Adı : " . $_POST["ad"];
echo "<br />Şifre : " . $_POST["sifre"];
?></code>

[/php]

GET Metodu Örnek :

Formu aynı şekilde oluşturuyorum yalnızca method özelliğini get yapıyorum. Action özelliğini get.php yapıyorum.


[php]<form method="get" action="get.php">
<table>
<tr>
<td>Ad</td>
<td><input type="text" name="ad" /></td>
</tr>
<tr>
<td>Şifre</td>
<td><input type="password" name="sifre" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Gönder" /></td>
</tr>
</table>
</form>[/php]


get.php içerigi

Verilere ulaşırken $_POST yerine $_GET ifadesini kullanıyorum.


[php]<?php
echo "Kullanıcı Adı : " . $_GET["ad"];
echo "<br />Şifre : " . $_GET["sifre"];
?>[/php]



Dikkat ettiyseniz get metodunda Gönder butonuna bastıktan sonra adres çubuğundaget.php?ad=ABC&sifre=123 gibi bir ifade çıktı. Yukarıda bahsetildiği gibi parametre değiştirme olayı tam olarak bu oluyor buda güvenlik açığı oluşturuyor.

Bu yazı PHP kategorisine gönderilmiş ve , , ile etiketlenmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.

Bir cevap yazın

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