Header() vs include

can anyone please explain the difference between these 2 instructions ?

I know that the ?erreur=true allows me to get the value ture in the contact-gimra.php
page.
But the header() also seems to reintialise all my variables ie they no longer exist.

Using the include is there any way to pass the erreur parameter ?

header(“location:contact-gimra.php?erreur=true”);

include (‘contact-gimra.php’);

TIA
Patricia

there is nothing common in these 2 functions. it is totally different.

you don’t need to pass anything when using include.
because include is the same as if you just copy it’s contents into parent script

While HTTP header “Location” asks browser to request another page from your server. as if user clicks a link on the page