La tabella ordini dovrebbe essere un po' più ricca, come hai intuito.
Ad esempio: ordini (id_ordine, id_utente, data)
In questo modo metti in relazione 1 ordine con 1 utente

Ti serve anche un'altra tabella che metta in relazione 1 ordine con molti eventi, ad esempio:
ordini_eventi (id_ordine, id_evento)

In questo modo, quando un utente conferma il contenuto del carrello, crei anzitutto un record nella tabella ordini del tipo (3, 5, '2008-02-16') [i numeri sono a casaccio ] e dopo, per ogni evento che l'utente ha selezionato crei un record nella tabella ordini_eventi tipo (3, 14) (3, 21) (3, 28) etc...

In questo modo con qualche join fra le tabelle riesci a reperire tutte le informazioni necessarie.

Questa ovviamente è solo una delle soluzioni possibili