MySQL'de Son Eklenen Veriyi Çağırma (PHP)

MySQL'de Son Eklenen Veriyi Çağırma (PHP)
MySQL'de Son Eklenen Veriyi Çağırma (PHP) PHP ile MySQL veritabanında en son eklenen kaydı çekmek için birkaç farklı yöntem kullanabilirsiniz. İşte en yaygın yöntemler: 1. AUTO_INCREMENT ID Kullanarak
<?php // Veritabanı bağlantısı $conn = new mysqli("localhost", "kullanici", "sifre", "veritabani"); // Bağlantı kontrolü if ($conn->connect_error) { die("Bağlantı hatası: " . $conn->connect_error); } // Son eklenen kaydı ID'ye göre sıralayarak çekme $sql = "SELECT * FROM tablo_adi ORDER BY id DESC LIMIT 1"; $result = $conn->query($sql); if ($result->num_rows > 0) { $row = $result->fetch_assoc(); echo "Son eklenen kayıt: " . $row; } else { echo "Kayıt bulunamadı"; } $conn->close(); ?>
  2. INSERT İşleminden Hemen Sonra Son Eklenen ID'yi Alma
<?php $conn = new mysqli("localhost", "kullanici", "sifre", "veritabani"); // Yeni kayıt ekleme $sql = "INSERT INTO tablo_adi (sutun1, sutun2) VALUES ('deger1', 'deger2')"; if ($conn->query($sql) { $last_id = $conn->insert_id; echo "Son eklenen kaydın ID'si: " . $last_id; // Bu ID ile kaydı çekme $sql2 = "SELECT * FROM tablo_adi WHERE id = $last_id"; $result = $conn->query($sql2); $row = $result->fetch_assoc(); print_r($row); } else { echo "Hata: " . $conn->error; } $conn->close(); ?>
3. Zaman Damgası (Timestamp) Kullanarak
<?php $conn = new mysqli("localhost", "kullanici", "sifre", "veritabani"); // Oluşturma zamanına göre sıralama $sql = "SELECT * FROM tablo_adi ORDER BY created_at DESC LIMIT 1"; $result = $conn->query($sql); if ($result->num_rows > 0) { $row = $result->fetch_assoc(); print_r($row); } else { echo "Kayıt bulunamadı"; } $conn->close(); ?>
  PDO Kullanarak  
<?php try { $db = new PDO("mysql:host=localhost;dbname=veritabani", "kullanici", "sifre"); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Son kaydı çekme $stmt = $db->query("SELECT * FROM tablo_adi ORDER BY id DESC LIMIT 1"); $lastRecord = $stmt->fetch(PDO::FETCH_ASSOC); print_r($lastRecord); // Veya insert işleminden sonra $stmt = $db->prepare("INSERT INTO tablo_adi (sutun1, sutun2) VALUES (?, ?)"); $stmt->execute(); $lastId = $db->lastInsertId(); echo "Son ID: " . $lastId; } catch(PDOException $e) { echo "Hata: " . $e->getMessage(); } ?>
Hangi yöntemi kullanacağınız, veritabanı yapınıza ve ihtiyaçlarınıza bağlıdır. ID sütunu varsa ve otomatik artıyorsa ilk yöntem en güvenilir olacaktır.