<?php
if (isset($login)){
echo "<div class='col-xs-6' id='login_text'>
<p class='login_text'>Здравствуйте, ".$login."!</p>
</div>";
}
else{
echo "<div class='col-xs-6' id='login_text'>
<form action='' method='post' class='login' id='login'>
<label>Логин</label><input type='text' name='login' value='".((isset($_COOKIE['gyppi_login']))?$_COOKIE['gyppi_login']:'')."' required>
<label>Пароль</label><input type='password' name='password' value='".((isset($_COOKIE['gyppi_password']))?$_COOKIE['gyppi_password']:'')."' required>
<input name='button' type='submit' value='Войти'>
</form>
<button onclick='window.location=\"registration.php\"' class='registration' id='regbutton'>Регистрация</button>".((isset($error_message))?'<div><p class="error_message">'.$error_message.'</p></div>':'')."</div>";
}
?>
<?php if (isset($login)): ?>
<div class='col-xs-6' id='login_text'>
<p class='login_text'>Здравствуйте, <?= $login ?>!</p>
</div>
<?php else: ?>
<div class='col-xs-6' id='login_text'>
<form action='' method='post' class='login' id='login'>
<label>Логин</label>
<input type='text' name='login'
value='<?= $_COOKIE[' gyppi_login'] ?? $_COOKIE['gyppi_login'] ?>' required>
<label>Пароль</label>
<input type='password' name='password'
value='<?= $_COOKIE[' gyppi_password'] ?? $_COOKIE['gyppi_password']?>'
required>
<input name='button' type='submit' value='Войти'>
</form>
<button onclick='window.location="registration.php"' class='registration' id='regbutton'>Регистрация</button>
<?php if (isset($error_message)): ?>'
<div>
<p class="error_message"><?=$error_message?></p>
</div>
<?php endif; ?>
</div>
<?php endif; ?>
onclick='window.location="registration.php"'
или комбинировать html с php это нормально и так и надо делать?если ты посмотришь на "скомпилированный" шаблона код ЛЮБОГО php-шаблонизатора, будь то smarty или что-то поновее, то увидишь, что в итоге получается html-шаблон со вставками php. Это абсолютно нормально.