Çekiliş düzenlediğim için basit bir kayıt ol - listele sistemi kurdum.
Her katılımcıya bir ID veriliyor ve çekilişi bu numaralar arasında yapıcam.
Sorun şu: Hatalı katılımı veri tabanından sildikten sonra ID boşluğu oluşuyor.
Örnek:
1- Ahmet
2- Mehmet
3- Ayşe
4- Gizem
5- Nur
Mehmet'i sildiğimde ID'ler şöyle oluyor haliyle:
1- Ahmet
3- Ayşe
4- Gizem
5- Nur
Yani 2 yok oluyor ve 3, 2 olarak değişmiyor. Çekiliş sırasında da bana 1-2-3-4-5 diye giden bir sıra lazım.
Yani birini sildiğimde o ID boşluğunu nasıl kapatabilirim?
Şimdiden teşekkürler.
Veritabanından veri sildikten sonra id aralığı kalıyor [PHP yardım]
7
●321
- 21-12-2018, 14:09:56Veritabanından çekmeyin ID bölümlerini, manuel girin sorun düzelecektir.
$ar=array("Ahmet","Test","Mehmet"); $zero=0; foreach ($ar as $arrr) { echo $zero++; }örnektir.
Düzenleme
$ar=array("Ahmet","Test","Mehmet"); $zero=1; foreach ($ar as $arrr) { echo $zero++ . " " . $arrr . "</br>"; }
Çıktı
1 Ahmet
2 Test
3 Mehmet - 21-12-2018, 14:22:07Deniyorum hocam teşekkür ederim.instads adlı üyeden alıntı: mesajı görüntüle
- 21-12-2018, 15:15:18cekilişte cıkan sayıyı id ye gore degilde dbden cekme sırasına göre $query[$cekilensayi] olarak yapabilirsiniz.
aktif-pasif ya da silindi olarak ta yapsanız sonucları cektiginizde yine silindi olarak işaretlenen degerler gelmeyecek, idler eksik olacak.
id değeri sqlde autoincrement tanımlıdır. silinenin yeri dolmaz, kayma olmaz. Siz yazılım mantığınızı değiştirmelisiniz.