5 Ağustos 2016 Cuma

Php'de Session Oturum Yönetimi

//session oturum yönetimi
NOT:Sayfa kapatıldığında oturumda kapatılır.session silinir.
//index.php
<form action="giris.php" method="post">
    Kullanıcı: <input type="kullanici" name="kullanici"/>
    <input type="submit" value="Giris"/>
   
</form>
//giris.php
<?php
//ilk php taglarının hemen altına bu satırları(session) açıyoruz.
ob_start();
session_start();

$kullanici=$_POST["kullanici"];
if($kullanici==""){
    header("location:index.php");
   
   
}elseif($kullanici!="Hakikat"){
   header("location:index.php");

}else{
   $_SESSION["kullanici"]=$kullanici;
//echo "kullanici adiniz: ".$_SESSION["kullanici"] ;
  header("location:hesabiniz.php");
}

?>
//hesabiniz.php
<?php
session_start();//burayada session_start() yazıyoruz.
$kullanici=$_SESSION["kullanici"];
if($kullanici==""){
    echo "Bu sayfayı görüntüleme için üye girişi yapın";
   
   
}else{
    echo "Üye girişi yaptınız<br>Kullanıcı adınız: ".$kullanici;
   
}

?>

Php'de Cookie Oturum Çerezlerini Bir Diziye Atmak

//cookie oturum çerezlerinizi bir diziye atmak
//index.php
<form action="giris.php" method="post">
    Kullanıcı Adı:<input type="text" name="kullanici"/><br>
    Şifreniz :<input type="password" name="sifre"/>
    <br><input type="submit" value="Giriş"/>
   
   
</form>
<a href="uyehesabi.php">Uye Hesabınız</a>
//giris.php
<?php

$kullaniciadi="hakikat";
$sifre="1234";
$email="hakikat@turkekip.com";
$yas="25";

$gelenkullanici=$_POST["kullanici"];
$parola=$_POST["sifre"];

if(($gelenkullanici==$kullaniciadi) and ($parola==$sifre)){
    setcookie("Kullanici[Rumuz]",$gelenkullanici,time()+60);//60 saniyelik oturum açıyoruz.
    setcookie("Kullanici[sifre]",$sifre,time()+60);//60 saniyelik oturum açıyoruz.
    setcookie("Kullanici[email]",$email,time()+60);//60 saniyelik oturum açıyoruz.
    setcookie("Kullanici[yas]",$yas,time()+60);//60 saniyelik oturum açıyoruz.
   
    echo "<center>Oturum açıldı hesabınıza yönlendiriliyorsunuz.</center>";
    header("Refresh:2,url=uyehesabi.php");
   
   
   
}else{
   echo "<center>kullanıcı adı ve şifreniz yanlış</center>";
    header("Refresh:2,url=index.php");
}

?>
//uyehesabi.php
<?php


$kullanici=$_COOKIE["Kullanici"];

if($kullanici==""){
    header("location:index.php");
   
}else{
   
    foreach ($kullanici as $anahtar =>$deger) {//cookie dizisinin içindeki değerlerini gördük.
        echo "$anahtar=$deger<br>";
    }
   
   // echo "Hoşgeldiniz: ".$kullanici."<br>";
    echo "Burası sizin hesabınız<br>";
    echo "<a href='cikis.php'>Çıkış yap</a>";
}


?>
//cikis.php
<?php

$kullanici=$_COOKIE["Kullanici"];
if($kullanici==""){
    echo "oturum zaten kapalı";
   
   
}else{
 // setcookie("Kullanici[email]");//cookieyi kapatır
//    setcookie("Kullanici","");//cookieyi kapatır
   setcookie("Kullanici[Rumuz]","",time()-15);//cookieyi kapatır
    setcookie("Kullanici[sifre]","",time()-15);//cookieyi kapatır
     setcookie("Kullanici[email]","",time()-15);//cookieyi kapatır
      setcookie("Kullanici[yas]","",time()-15);//cookieyi kapatır
  header("location:uyehesabi.php");
   
}



?>

Php'de Çerezlerle Oturum Kontrol Yönetemi

//çerezlerle oturum kontrol yönetimi
Not:Cookiler head taglarının üstünde olacak şekilde açılmalıdır.
//index.php
<form action="giris.php" method="post">
    Kullanıcı Adı:<input type="text" name="kullanici"/><br>
    Şifreniz :<input type="password" name="sifre"/>
    <br><input type="submit" value="Giriş"/>
   
   
</form>
<a href="uyehesabi.php">Uye Hesabınız</a>
//giris.php
<?php

$kullaniciadi="hakikat";
$sifre="1234";

$gelenkullanici=$_POST["kullanici"];
$parola=$_POST["sifre"];

if(($gelenkullanici==$kullaniciadi) and ($parola==$sifre)){
    setcookie("Kullanici",$gelenkullanici,time()+60);//60 saniyelik oturum açıyoruz.
    echo "<center>Oturum açıldı hesabınıza yönlendiriliyorsunuz.</center>";
    header("Refresh:2,url=uyehesabi.php");
   
   
   
}else{
   echo "<center>kullanıcı adı ve şifreniz yanlış</center>";
    header("Refresh:2,url=index.php");
}

?>
//uyehesabi.php
<?php


$kullanici=$_COOKIE["Kullanici"];

if($kullanici==""){
    header("location:index.php");
   
}else{
   
    echo "Hoşgeldiniz: ".$kullanici."<br>";
    echo "Burası sizin hesabınız<br>";
    echo "<a href='cikis.php'>Çıkış yap</a>";
}


?>
//cikis.php
<?php

$kullanici=$_COOKIE["Kullanici"];
if($kullanici==""){
    echo "oturum zaten kapalı";
   
   
}else{
  setcookie("Kullanici");//cookieyi kapatır
//    setcookie("Kullanici","");//cookieyi kapatır
  //    setcookie("Kullanici","",time()-15);//cookieyi kapatır
  header("location:uyehesabi.php");
   
}



?>

Php'de ereg_replace ve ere fonksiyonları

//ereg_replace ve ere fonksiyonları
index.php
<?php
/* zararlı kodları silmek için kullanılabilir.
 * ereg_replace();
 * eregi_replace();
 *
 *
 *
 */
$mesaj="<meta http-equiv=\"refresh\" content=\"1;url=hack.html\">";
$yenimesaj=ereg_replace("<","",$mesaj);//< varsa boş yap mesaj değişkenine at
$yenimesaj1=ereg_replace(">","",$yenimesaj);
$yenimesaj2=ereg_replace("refresh","",$yenimesaj1); //refresh kelimesini boş yap $yenimesaj1 değişkenine at.

echo $yenimesaj2;//Çıktı:meta http-equiv="" content="1;url=hack.html"  < , >  ve refresh gitti silindi.


?>
//hack.html
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
    <head>
    <title>TODO supply a title</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div>hacklendin</div>
</body>
</html>

Ereg Eregi Düzenli İfadeler Fonksiyonu

//ereg eregi düzenli ifadeler fonksiyonu
//index.php
<?php

/*
ereg();  içinde var mı yok mu
 * eregi();//büyük küçük harf ayrımı yapmaz
 *
 *  */


echo "<a href=\"index.php?Git=Merhaba\">Merhaba için tıkla </a>";
$git=$_GET["Git"];
if($git=="Merhaba"){
    include("merhaba.php");
   
}

?>
//merhaba.php
<?php
/*$sayfa=$_SERVER["PHP_SELF"];  //sayfanın adını çeker.<orm post olaylarında kendi içinde post olmasınıda sağlar.<form action="$PHP_SELF" method="POST">
echo $sayfa;//Çıktı:php_dersleri/duzenliifadelerfonksiyonuereg/index.php
*/

if(!ereg("index.php",$_SERVER["PHP_SELF"])){
   
    die ("bu sayfa tek başına görünütlenemez");
}

echo "<center><b>Merhaba arkadaşlar burası merhaba sayFASI<center>";


?>

Php'de ereg ve eregi düzenli ifadeler fonksiyonu

//ereg eregi düzenli ifadeler fonksiyonu
<?php

/*
ereg();//içinde var mı yok mu bakar.
 * eregi();//büyük küçük harf ayrımı yapmaz
 *
 *  */

$kullanici="ramazan";
if(eregi("Ramazan",$kullanici,$sonuc)){//aranacak kelime ,aranacağı yer,atanacağı yeni dizin 3 parametresi var
    echo "Kullanıcı doğru<br>";
    echo "Kullanıcının Adı: ".$sonuc[0];
   
}else{
      echo "Kullanıcı yanlış<br>";
    echo "Kullanıcının Adı: ".$sonuc[0];
   
}


?>

Php'de Dizin İşlemleri

//dizin içindeki dizin yada dosyaların listelenmesi
//index.php
<form action="yukle.php" method="post" enctype="multipart/form-data">
<div align="center">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Dosyayı Seç</td>
<td>:</td>
<td><input type="file" name="dosya" size="20"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" value="Yükle"></td>
</tr>
</table>


</div>


</form>

<?php

$dizin="resimler";
$dizinac=opendir($dizin) or die("dizin açılamadı");
while($yaz=readdir($dizinac)){ //resimler dizinini ekrana yazdırıyoruz.                    
  $resim=substr($yaz,-4);   //son 4 hanesibi alırız .PNG gibi
  if($resim==".PNG"){   //sadece .png uzantılı dosyaları göster
     // echo $yaz."<br>";//dosyanın isimlerini yazdırır.
      echo '<p><img border="0" src="'.$dizin.'/'.$yaz.'" width="129" height="141"/></p>'; //dizindeki resimleri ekrana yazdırır.
  }
   
   
 //   if( !is_dir("$dizin/$yaz")){ //sadece dosya isimlerini yazdık.(Dizin olmayanları yazdık Not:Dizinler: . ,..,dosyalar klasörü )
  //  echo $yaz."<br>";  
       /*ÇIKTI
917d65799f950fc79ad3.PNG
991dc84d21243391a129.PNG
b3eb42ff065e76fd8215.PNG
ben.PNG
     *
     *      */
         
 //   }

/*if(!ereg("[.]",$yaz)){//dizin içindeki dosya isimlerini yazdırır.
            echo "bu bir dizindir:-->".$yaz."<br>";
           
          // çıktı
          //  dosyalar
            //    dosyalar2
 
        }else{
             echo "bu bir resimdir-->" .$yaz."<br>";    //resimleride alır.
               
            }
    */
   
}

?>
//yukle.php
<?php

/*sunucu taraflı yüklemelerde dizinin chmod ayarı 777 olmak zorundadır.*/

$kaynak=$_FILES["dosya"]["tmp_name"];//Dosyanın geldiği yerC:\xampp\tmp\php786F.tmp
$dosyaadi=$_FILES["dosya"]["name"]; // Dosyanın adı ben.PNG
$dosyatipi=$_FILES["dosya"]["type"];//Dosyanın tipi image/png
$dosyaboyut=$_FILES["dosya"]["size"];//Dosyanın boyutu38484byte boyutunda
$hedef="resimler";

$uzanti=  substr($dosyaadi, -4);//dosya uzantısını alır. resim.png ise .png kısmını alır.

$yeniad=substr(md5(uniqid(rand())),0,20);//20 haneli rastgele isim oluşturduk.(1b16f5f89609436e7a7c  gibi)
//echo $yeniad;
$yeniresimadi=$yeniad.$uzanti;//1b16f5f89609436e7a7c.png adlı resimadi oluşturduk.rastgele isimler oluşturabiliriz.
//echo $yeniresimadi;

if(($dosyatipi!="image/png")&&($dosyatipi!="image/jpeg")){//dosya tipi resim(png ve jpeg) değilse
    echo "<center>HATA !<br> Yüklemeye çlaıştığınız dosya resim dosyası değil<br> Yükleyebileceğiniz dosya formatı png uzantılı olmalıdır.";
   
   
}elseif($dosyaboyut>"90000"){
   
    echo "<center>HATA !<br> Yüklemeye çlaıştığınız dosyanın boyutu çok büyüük Enfazla 31000 byte büyüklüğünde dosya yükleyebilirsiniz.";
}else{
    $yukle=  move_uploaded_file($kaynak, $hedef.'/'.$yeniresimadi);//1b16f5f89609436e7a7c.png  olarak kaydettik.sürekli değerleri değişiyor.
   // $yukle=  move_uploaded_file($kaynak, $hedef.'/'.$dosyaadi);//resimler/ben.png olarak kaydettik.($yukle=  move_uploaded_file($kaynak, $hedef.'/'.$dosyaadi))
    if($yukle){//yukle olumlu ise
        echo "<center>Dosya başarı ile yüklendi<br></center>";
    }else{
       
         echo "<center>Dosya yüklenemedi<br></center>";
    }
    echo "Dosyanın geldiği yer".$kaynak."<br>";
echo "Dosyanın adı ".$dosyaadi."<br>";
echo "Dosyanın tipi ".$dosyatipi."<br>";
echo "Dosyanın boyutu".$dosyaboyut."byte boyutunda <br>";
   
}

?>