v2.5.2
Giriş yap

PDO::lastInsertId

buraksuluk
992 defa görüntülendi

Herkeze merhabalar benim bir sorum olucak.
Diyelimki iki tane mysql tablom var ve birbiri ile ilişkili.

satislar ve satis_detay şeklinde,

satislar
---------------------------------------------
|id | kullanici_id | musteri_id|musteri_adi |
| 1 |    1         |    10     |Burak       |
| 2 |    2         |    12     |Mehmet      |
| 3 |    1         |    10     |Burak       |
---------------------------------------------

satis_detay
------------------------------------------
|id | kullanici_id | satis_id  |urun_adi |
| 1 |    1         |    1      |A Ürünü  |
| 2 |    2         |    2      |B Ürünü  |
| 3 |    1         |    1      |C Ürünü  |
------------------------------------------

Şimdi bir tane satış sayfasında birtane form olduğunu düşünün ben önce
formu satislar adlı tablo gönderiyorum ve daha sonra sayfada kaç
adet ürün varsa onlarıda döngüye sokup satis_detay tablosuna kayıt ediyorum.

bunu yaparkenken satislar sayfasına insert işlemi yaptıkdan sonra lastInsertId()
id yi alıp satis_detay toblosunda satis_id ekliyorum ve şuanda hiç bir sorun yaşamıyorum.
beginTransaction() fonkisyonunuda kullanıyorum kodlarımda.

Senaryoyu şöyle düşünelim neticede onlarca kullanıcım var ve hepsi aynı anda satis yaptığını düşünün
o zaman lastInsertId() çakışırmı bu lastInsertId() bir koşula bağlayarak yani lastInsertId() alıp daha sonra bir SELECT ile kullanici_id alıp karşılaştırıp ona göremi
satis_detay sayfasına kayıt ettiriyim yada bunun başka bir yolu varmı , yada hiç birşey yapmama gerek yok mu:)

Cevap yaz
Cevaplar (2)
redline
1741 gün önce

Bu fonksiyonu kullanırken benim de aklıma takılan bir soru işareti bu. :D

shelby
1741 gün önce

Sorun olmaz merak etme, last insert id tek bir bağlantıya özel oluşturulan bir değer.Diğer bağlantılardan izoledir.