php ile ilgili bir sorun
merhabalar php ile ufak bi script yazıyorum da yapamadıgım kısım şu şekilde veritabanına kaydettigim keyler mevcut. Kullanıcılara bu keyleri "doğrula" butonuna bastıktan sonra reklam sitelerine yönlendirip reklamı izleyip geçtikten sonra vermekti hedefim fakat yapamadım. mesela reklamı geçtikten sonra https://site.com/finish?verify=123 .... şu şekilde bir link yapısıyla gönderip keyleri verebiliyorum fakat benim istedigim keyi aldıktan sonra https://site.com/finish?verify=123 bu linke bidaha giremesin. VE https://site.com/finish?verify= verifiyden sonra herhangi bi deger yazıp keylerime erişemesin umarım anlatabilmişimdir bilen varsa yardımcı olabilir mi ?
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (1)
<?php
// Veritabanı bağlantısı
$db = new PDO(...);
// Doğrulama işlemi
if (isset($_POST['verify'])) { // İsteğe göre POST veya GET, güvenli olsun diye $_POST aldım
$key = $_POST['verify'];
// Key'in veritabanında olup olmadığını kontrol et
$stmt = $db->prepare("SELECT * FROM keys WHERE key = ?");
$stmt->execute([$key]);
$row = $stmt->fetch();
// Key geçerliyse ve kullanılmamışsa
if ($row && $row['used'] === 0) {
// Key'i kullanıcıya ver
echo "Key: " . $row['key'];
// Key'i kullanılmış olarak işaretle
$stmt = $db->prepare("UPDATE keys SET used = 1 WHERE id = ?");
$stmt->execute([$row['id']]);
} else {
// Key geçersiz veya kullanılmış
echo "Hatalı key veya key daha önce kullanılmış.";
}
}
?>