Hidden ile token gönderme
4
●120
- 12-10-2022, 21:31:58Merhabalar, formda hidden ile her işlem başına token göndermek istiyorum hidden ile göndermede bir sakınca var mı?
- 12-10-2022, 21:42:41heryere cektıgınız dosyaya ekleyın.
if (!isset($_SESSION['_token'])) { $_SESSION['_token'] = md5(time() . rand(0, 999999)); }forma ekleyın
<input type="hidden" name="_token" value="<?= $_SESSION['_token'] ?>">
post varsa bununla devam edin.
if ($_SESSION['_token'] != post('_token')) { $error = 'Token Hatası!'; } else { sql işlemleri }
token oluşturmak dış etkenlere engel olmaktır. Sistemi kullanan kişiler için çok bir önem teşkil etmez. Verdiğim örneğin açıklaması şudur;
Sayfa açıldığında bir session oluşturur bu session form içinde hidden ile yollarsınız arka kısımdada sessiondaki token ile posttan gelen token eşleşiyorsa işlem yaptırırsınız.
En basit yöntemi budur. Yıllardır kullanıyorum. - 12-10-2022, 21:46:12Yapmak istediğim mesela birisi iletişim formu gönderdi birkaç kez butona basarsa aynı formu birkaç kez gönderir ama tokeni alarak bu token kayıtlı ise kaydetme dersem form bir kere gönderildikten sonra token kayitlanacak ve daha fazla kayıt eklemeyecekbahax41 adlı üyeden alıntı: mesajı görüntüle
- 13-10-2022, 01:18:48https://www.php.net/manual/en/functi...sl-encrypt.php
Openssl ile güçlü bir anahtar değer ile encyrptleyerek hidden inputuna yaz, sonra işlem gönderildiğinde arkada gene aynı anahtar değer ile decryptle.
Eğer daha önce openssl kullanmadıysan şu videoyu izleyebilirsin;
https://www.youtube.com/watch?v=8JxM7lo6x8o