Ano, je to možné. Je to klasický případ rasové podmínky.
Rychlé vysvětlení:
Je možné, že 2 žádosti současně projdete první kontrolou a získáte $num == 0 a oba vloží nový řádek.
Chcete-li to odstranit, musíte vytvořit UNIQUE omezení, které pokrývá (user_id, ip, date) sloupce
Dlouhé vysvětlení: