OK - here's a shot at an explanation.
Phonetics refers to the actual sounds of speech. All spoken languages can be written phonetically (using a special alphabet such as IPA) but it!0's pretty useless as every speaker would be written differently (accent etc) and indeed the same speaker could have the same sentence written differently depending on whether they're speaking hurriedly, have a cold etc.
What matters in terms of language are phonemes - which are the way we hear units of sound that carry meaning. So for example, you can hear the difference between bat, bet, bit, bot, boat, but and beaut -whatever acdent the speaker - because the different vowel sound carries the meaning. Same for consonants - pat, bat, chat, that, hat, cat.
Those 'meaningful' units of sound are called phonemes. They exist in the same pattern for the language - whatever the accent - but you might say a somewhat different sound for certain phonemes according to accent (examples from PPs earlier).
Phonics is the code which relates phonemes to how they are written.
In English there can be more than one way to write a sound; and the written the letter groups (which are known as graphemes) can sometimes represent more than one sound. Which means it's not one-to-one correspondence, but a code on how to relate all the sounds of a language to the letters.
It's also the traditional way to teach people how to read alphabetic languages - spontaneously done by anyone who has sounded our c-a-t to an infant.
It's taught (usually) by learning some straightforward bits of the code, then adding to it as the DC masters each bit. Because of the history of the English language, it's likely they will encounter some words which contain phoneme/grapheme correspondences they do not yet recognise (ie have not yet learned how to sound that out). These are called in some schemes 'tricky' words. This doesn't mean that they cannot be read phonically, simply that they have appeared ahead of that specific bit of code has been taught.