Egy sql szűrés utáni módosító lekérdezés mikéntje php és sql segítségével
2021-11-02T11:57:29+01:00
2021-11-02T14:11:39+01:00
2022-08-12T05:25:28+02:00
BeginnerIT
Üdv!

A következőt problémát nem tudom megoldani.
Sakk mérkőzésekre lehet fogadni: 3 tábla vesz részt a fogadások lebonyolításában
az 1. táblában: a fogadás azonosítója, a fogadó személy azonosítója, és végül a fogadás állapotát jelző mező                      a fogadás állapota 3 féle lehet: 1 aktív, 2 vesztes, 3 nyertes

2. tábla: azonosító, a fogadott sakk meccs azonosítója, a fogadás azonosítója(előző tábla), ki nyeri a meccset(pl: 1,világos, 2,döntetlen, 3, sötét)

3. tábla: tábla azonosító, a fogadott sakk meccs azonosítója(mint a 2es táblában), győztes(pl: 1,világos, 2,döntetlen, 3, sötét)

Azt szeretném elérni, hogyha a 3. táblába beírom egy sakk meccs azonosítóját és nyertesét azt hasonlítsa össze a 2. táblával és ha minden mérkőzésen végig halat (egy fogadás azonosító alatt több fogadás is lehetséges(több fogadott sakk meccs azonosító)) akkor az 1 táblában a kinyeri a mérkőzést mező váltson át ha minden párharc győztese megegyezik a fogadó tippjével akkor nyertesre ha mind vagy egyik eltérő akkor vesztesre

natív php-vel szeretném megcsinál, kellene pár tipp, hogy hogyan is álljak neki mert most kicsit szét vagyok szórva és nehezen állnak össze a gondolatok

Én a következő képen állnék neki:
egy sql lekérdezéssel kikeresném az adott felhasználó fogadását  és tömbként kezelve foreach segítségével végig haladnék rajta és közben keresném a 3. táblával való egyezést , ha a fogadás minden mérkőzésén végig ment akkor az egyezésektől függően igazzal vagy hamissal tér vissza, nyertes/vesztes fogadás  és végül ez alapján lenne egy módosító lekérdezés ami átállítja a 1. tábla fogadás állapota mezőt nyertesre, vagy vesztesre

De mi van akkor ha egy ember több fogadást is kötött? Vagy ha nincs még minden mérkőzésnek beírva a győztese? 
Ettől teljesen eltérő megoldások is jöhetnek.

Előre köszönök minden segítséget!
Mutasd a teljes hozzászólást!
Ezt a problémát tipikusan triggerrel kell megoldani adatbázis szinten. Ha php-ben csinálod, az felesleges forgalmakat bonyolit a DB server felé, és ráadásul sokkal lassabb. is.

after update trigger

Ha a nyertes módositásra kerül, akkor update-eled a 2. és az 1. táblát. És kész.
Mutasd a teljes hozzászólást!

abcd