Bir web sitemiz var ve bu websitemizin bazı bölümlerini herkesin görmesini istemiyoruz. Bunun için bazı teknikler kullanabiliriz. Mesela .htaccess dosyası üzerinde yeni kodlar ekleyerek her türlü sayfa uzantısını şifreleyebiliriz; yalnız .htaccess üzerinde yapacağımız değişiklikler .htaccess dosyasının bulunduğu dizindeki tüm sayfaları otomatik şifreler. Bunu istemeyebiliriz. HTML sayfaları javascript kodları ile şifreleyebiliriz ancak hiçbiri php'de yapılan şifreleme tekniği kadar etkili ve güvenli olamaz. Bu şifreleme tekniğinde Mysql gibi veritabanlarını sorgulamayacağız. İki adet basit php sayfası hazırlayacağız. Bu sayfalardan ilki, asıl bilgilerin görünmesini istemediğimiz ikinci sayfamıza ulaşmamızı sağlayacak form girdilerini isteyen bir sayfa olacak. Hemen hazırlıyoruz;

sayfa1.php

HTML:
  1. <title>Sayfa Şifreleme Tekniği</title>
  2. </head>
  3. <center><form method="post" action="sayfa2.php">
  4. <td>Kullanıcı:</td><td><input type="text" name="k1"/></td>
  5. </tr><tr><td>Şifre:</td><td><input type="password" name="p1"/></td>
  6. </tr><tr><td colspan="2" align="right"><input type="submit" name="submit" value="giriş"/>
  7. </td></tr></table></form>
  8. </center>
  9. </html>

İlk sayfamızı hazırladık. Şimdi bu ilk sayfamıza gireceğimiz girdilerin işlem göreceği sayfayı yani sayfa2.php 'yi hazırlayalım;

sayfa2.php:

PHP:
  1. <?php
  2. /////////////////////////////////
  3. // PHP Sayfaları Şifreleme     //
  4. /////////////////////////////////
  5. $k1=$_REQUEST['k1'];
  6. $p1=$_REQUEST['p1'];
  7. if(($k1=='wbturk') AND ($p1=='wbturk42'))
  8. {
  9. <html><head>
  10. <title>
  11. Giriş Başarılı!
  12. </title>
  13. <body>
  14. <img src=\"tick.jpg\"/><img src=\"operator.gif\"/><br />
  15. <form method=\"POST\" action=\"http://wbturk.x/action.php\">
  16.   <table>
  17.   <input type=\"hidden\" name=\"x1\" size=\"20\" value=\"xxx\"/>
  18.   <input type=\"hidden\" name=\"x2\" size=\"20\" value=\"xxxx\"/>
  19.   <tr>
  20.       <td>AD SOYAD : </td>
  21.       <td><input type=\"text\" name=\"x3\" size=\"20\" value=\"Bill Gates\"/></td>
  22.     </tr>
  23.     <tr>
  24.       <td>Alıcı:</td>
  25.       <td><input type=\"text\" name=\"x7\" size=\"20\" value=\"hilltech\"/> (hiilly.) - (hilbak.) - (emrep.) - (hilltech)
  26.     </td></tr>
  27.     <tr>
  28.       <td>İleti:</td>
  29.       <td><textarea name=\"x4\" rows=\"6\" cols=\"48\">İleti alanı. Bu alanı görüyorsanız, dersi başarıyla
  30. uyguladığınıza emin olabilirsiniz. PHP sayfaları şifrelemede değişik yöntemler kullanılmaktadır. Bu yöntemi daha önce
  31. herhangi bir yerde görmediğim ve internette dolaşan bazı şifreleme tekniklerinin hatalarla dolu olması, bu basit örneği
  32. hazırlama ihtiyacı duymama neden oldu...</textarea></td>
  33.     </tr>
  34.     <tr><td colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Gönder\" name=\"B1\"/></td>
  35. </tr>
  36.   </table> </form></body>";
  37. } else {
  38. echo "kullanıcı bilgileri yanlış! <br /> <br /> Doğru bilgileri girmelisiniz. Giriş yapmak için <a href=\"javascript:history.back(1)\">tıklayın</a>";
  39. }
  40.  ?>

İkinci sayfamızda birden fazla kullanıcı adı ve şifre tanımlamak isteyebilirsiniz. Bu durumda yapmanız gereken tek şey:

PHP:
  1. <?php
  2. if(($k1=='wbturk') OR ($k1=='admin') AND ($p1=='wbturk42') OR ($p1=='admin42'))
  3.  ?>

şeklinde uzatabilirsiniz. Unutmayınız ki if'leri bu şekilde hazırlarsanız dört farklı şekilde giriş mümkün olacaktır. Örneğin, kullanıcı adı wbturk ve şifre admin42 olabilir. Her kullanıcının ayrı girişlere sahip olmasını istiyorsanız (else if) conditionlarını kullanmanız gerekecektir. Örneğin:

PHP:
  1. <?php
  2. if(($k1=='wbturk) AND ($p1=='wbturk42')) {
  3.   # kod satırlarımız
  4. }
  5. else if(($k1=='admin') AND ($p1=='admin42')) {
  6.   # diğer kod satırlarımız
  7. }
  8. ?>

Favorilerinize Ekleyin.
  • BlinkList
  • del.icio.us
  • Digg
  • Netvouz
  • DZone
  • ThisNext
  • MisterWong
  • Wists
  • blogmarks
  • Blue Dot
  • Furl
  • Netscape
  • NewsVine
  • Reddit
  • Shadows
  • Technorati
  • YahooMyWeb
  • Fark
  • feedmelinks
  • Fleck
  • kick.ie
  • LinkaGoGo
  • Linkter
  • MyShare
  • Spurl
  • Webride