Hoşgeldin Misafir

PHP de en güvenli veri iletme işlemi

lucifer71

30 May 2024
28 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Öncelikle selamun aleykum dostlarım, bu yazımızda en güvenli şekilde veri nasıl iletilir çok kısa tutarak sizlere anlatmak istiyorum. İlk konum olacağı için yanlışım olursa mazur görün.



Öncelikle basit form oluşturduk

PHP:
<form action="gidenVeri.php" method="post">
//Buraya dikkat edin burası hidden olacak
$_SESSION['csrf_token'] = bin2hex(random_bytes(32));
    <input type="hidden" name="csrf_token" value="<?php echo $_SESSION['csrf_token']; ?>">

    <label for="name">Adınız:</label>

    <input type="text" id="name" name="name" required>

    

    <label for="email">E-posta:</label>

    <input type="email" id="email" name="email" required>

    

    <button type="submit">Gönder</button>

</form>

Ardıdan verinin gönderileceği sayfamızı ayarlıyoruz



PHP:
<?php
session_start();

// tokeni doğrulama aşaması
if (!isset($_POST['csrf_token']) || $_POST['csrf_token'] !== $_SESSION['csrf_token']) {
    die('Geçersiz CSRF token.');
}

// Formdan alına bilecek html kodları pasif hale getirir
$name = htmlspecialchars($_POST['name']);
$email = htmlspecialchars($_POST['email']);

// Verileri ekrana basacak
echo "Adınız: " . $name . "<br>";
echo "E-posta: " . $email;
?>


Verileri doğrulama ve filtreleme aşaması

PHP:
// Verileri filtrlere
$name = filter_var($_POST['name'], FILTER_SANITIZE_STRING);
$email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);
 f
// Verileri doğrula form kontrolü
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    die('Geçersiz e-posta adresi.');
}


Ve son olarak

PHP:
//ERROR LOGLARINI MUHAKKAK BARINDIRIN BELLİ BAŞLI HOSTİNG FİRMALARI BULUNDURUR SİZİN ADINIZA SİZİNDE YAPMANIZI ÖNERİRİM
error_log("Hata: Geçersiz e-posta adresi", 10, "/hata-gunlugu-denetle.log");


Bir sonraki konumuzda web sitesinde Admin panelini güvenli hale getirip random uzantılar ile post etmeyi öğreneceğiz .
 

Graves

Graves

Karanlık Özgürlüktür
Moderator
9 Eki 2024
10,458 Mesaj
TIM Görevleri
2

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Öncelikle selamun aleykum dostlarım, bu yazımızda en güvenli şekilde veri nasıl iletilir çok kısa tutarak sizlere anlatmak istiyorum. İlk konum olacağı için yanlışım olursa mazur görün.



Öncelikle basit form oluşturduk

PHP:
<form action="gidenVeri.php" method="post">
//Buraya dikkat edin burası hidden olacak
$_SESSION['csrf_token'] = bin2hex(random_bytes(32));
    <input type="hidden" name="csrf_token" value="<?php echo $_SESSION['csrf_token']; ?>">

    <label for="name">Adınız:</label>

    <input type="text" id="name" name="name" required>

   

    <label for="email">E-posta:</label>

    <input type="email" id="email" name="email" required>

   

    <button type="submit">Gönder</button>

</form>

Ardıdan verinin gönderileceği sayfamızı ayarlıyoruz



PHP:
<?php
session_start();

// tokeni doğrulama aşaması
if (!isset($_POST['csrf_token']) || $_POST['csrf_token'] !== $_SESSION['csrf_token']) {
    die('Geçersiz CSRF token.');
}

// Formdan alına bilecek html kodları pasif hale getirir
$name = htmlspecialchars($_POST['name']);
$email = htmlspecialchars($_POST['email']);

// Verileri ekrana basacak
echo "Adınız: " . $name . "<br>";
echo "E-posta: " . $email;
?>


Verileri doğrulama ve filtreleme aşaması

PHP:
// Verileri filtrlere
$name = filter_var($_POST['name'], FILTER_SANITIZE_STRING);
$email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);
 f
// Verileri doğrula form kontrolü
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    die('Geçersiz e-posta adresi.');
}


Ve son olarak

PHP:
//ERROR LOGLARINI MUHAKKAK BARINDIRIN BELLİ BAŞLI HOSTİNG FİRMALARI BULUNDURUR SİZİN ADINIZA SİZİNDE YAPMANIZI ÖNERİRİM
error_log("Hata: Geçersiz e-posta adresi", 10, "/hata-gunlugu-denetle.log");


Bir sonraki konumuzda web sitesinde Admin panelini güvenli hale getirip random uzantılar ile post etmeyi öğreneceğiz .
Eline sağlık