You can't just go from PHP to HTML like that. Either escape from PHP (with an end tag) before the HTML, or echo the HTML as a string.
<?php
if($_COOKIE['login']==1)
{
print "Hello ".$_COOKIE[firstname];
}
else
{
?>
<FORM METHOD="POST" ACTION="frontpage3.php">
<strong>Username:</strong><br>
<INPUT TYPE="text" NAME="username">
<p><strong>Password:</strong><br>
<INPUT TYPE="password" NAME="password"><br>
<br><INPUT TYPE="SUBMIT" NAME="submit" VALUE="Login">
<p>
If you are not a registered user please register <a href="index_register2.html">here</a> </p>
</FORM>
<?php
}
?>
or
<?php
if($_COOKIE['login']==1)
{
print "Hello ".$_COOKIE[firstname];
}
else
{
echo '<FORM METHOD="POST" ACTION="frontpage3.php">
<strong>Username:</strong><br>
<INPUT TYPE="text" NAME="username">
<p><strong>Password:</strong><br>
<INPUT TYPE="password" NAME="password"><br>
<br><INPUT TYPE="SUBMIT" NAME="submit" VALUE="Login">
<p>
If you are not a registered user please register <a href="index_register2.html">here</a> </p>
</FORM>';
}
?>
Edit: Put quotes around your array indexes.