Setcookies problem....problem with headers(possibly)

No, like @felgall says, the HTTP-EQUIV meta tag was meant to provide an equivalent to a HTTP header when that header was not actually sent. That way the browser has something to fall back on when the HTTP response doesn’t provide it with a real header.

Normally the HTTP server will send the content type automatically, based on the file type. When server-side languages like PHP are involved, they can also be used to specify the content type and charset.

In PHP, specifically, you can set these values in the main config file, using these directives:

default_mimetype = "text/html"
default_charset = "UTF-8"

Note that prior to PHP 5.6, the default_charset was empty/not set by default, so if you are using an earlier version, you should change that and set it. (UTF-8 is a safe choice for most situations.)

You can also change this in the PHP code, if necessary, by simply using the header() function to specify the header:

header("Content-Type: text/html; charset=UTF-8");

Although this is generally redundant for HTML output. It’s more useful when you’re generating other types of output, like JSON or XML.