Sto seguendo la soluzione n. 1 di questa risposta . Dopo un po ', ci saranno alcune righe ridondanti nella tabella. Supponi questa tabella:
// cookies
+---------+-------------------------+------------------+------------+------------+
| id | email | cookie | date_time | device |
+---------+-------------------------+------------------+------------+------------+
| int(11) | varchar(50) | varchar(128) | int(11) | |
+---------+-------------------------+------------------+------------+------------+
| 1 | [email protected] | ojer0f934mf2... | 1467204523 | |
| 2 | [email protected] | ko4398f43043... | 1467205521 | |
| 3 | [email protected] | 34fjkg3j438t... | 1467205601 | |
| 4 | [email protected] | 0243hfd348i4... | 1467206039 | |
+---------+-------------------------+------------------+------------+------------+
Quindi la colonna email
non è univoca e ogni dispositivo ha una propria riga.
La mia domanda: come posso compilare la colonna device
? Devo anche rilevare il dispositivo dell'utente o devo gestirlo in un altro modo?
Perché devo determinare i dispositivi? Da quando un utente rimuove i cookie del browser, il mio sito Web li identifica come nuovo utente e crea una nuova riga per loro nella tabella sopra. Quindi dopo un po ', ci saranno alcune righe ridondanti nella tabella.
Ad esempio: immagina peter
ha solo due dispositivi (laptop, telefono) . E ha due file nella tabella sopra. Rimuove i cookie del browser e accede. Cosa succede? Il mio sito Web crea una nuova riga nella tabella sopra. Ora peter
ha 3 righe nella tabella sopra (mentre ha solo due dispositivi) . Quindi sicuramente una di queste tre file è ridondante. Ecco perché devo rilevare i dispositivi per rimuovere le righe ridondanti.