hier staat:
( show_season_id($season_name) > 0 )
Vergelijk de uitkomst van de functie show_season_id met het getal 0.
Wel, als die uitkomst luidt: "2025-2026", dan wordt daarvan een getal gemaakt: 2024
Dat vergelijk jij met 0 en je vraagt of 2024 groter is dan 0 (ja)
Dus TRUE.
TRUE en 1 zijn uitwisselbaar in veel gevallen in PHP, dus daar zou je 1 vandaan kunnen komen.
----
prev_season_id:
dat is niet per se het id van de huidige - 1.
Als je ze niet op volgorde invoert, dan kan dat een random id zijn, misschien wel groter dan de huidige.
Vergelijk dus op waarde, datum of een volgordenummer. Maar nooit op ID.
in jouw logica zou er dan 75 - 1 = 74 uit moeten komen.
Maar volgens mij is jouw "1" een true.
Hoe dan ook: ik vind dat jouw "prev_season_id" moet komen uit.
SELECT s.as_season_id AS seasonid
FROM as_seasons s
WHERE s.as_season_name < '".$season_name."'"
ORDER BY s.as_season_name DESC
LIMIT 1
Als jij nu namelijk ook nog een seizoen 2020-2021 invoert, krijgt die id = 121 en gaat alles onderuit.
Een ID heeft geen numerieke betekenis.
"Toevallig" zijn dit opvolgende getallen, maar het had net zo goed moeten werken met een reeks:
begin = 1
+4 = 5
-1 = 4
+4 = 8
-1 = 7
+4 = 12
-1 = 11
Dat zijn allemaal unieke aanduidingen.
Net als jouw BSN: geen enkele volgorde aan te bekennen of een relatie met je familie of geboortejaar.