phpMyAdmin
 sql >> Datenbank >  >> Database Tools >> phpMyAdmin

Ist es möglich, in diesem Code doppelte IP-Adressen zu erstellen?

Ja, es ist möglich. Es ist ein klassischer Fall einer Race Condition.

Die schnelle Erklärung:

Es besteht die Möglichkeit, dass 2 Anfragen gleichzeitig eingehen Bestehen Sie die erste Prüfung, erhalten Sie $num == 0 und beide fügen eine neue Zeile ein.

Um ihn zu eliminieren, müssen Sie einen UNIQUE erstellen Einschränkung, die (user_id, ip, date) abdeckt Spalten

Die lange Erklärung: