Вы можете просто добавить общий класс ко всем тегам формы, на которые вы хотите повлиять, и использовать этот один класс в селекторе вместо повторения правил с несколькими идентификаторами.
<form id="node-825" class="layout_1">
...
</form>
<form id="node-826">
...
</form>
<form id="node-827" class="layout_1">
...
</form>
... и в CSS
.layout_1 input[type="text"],
.layout_1 input[type="tel"],
.layout_1 input[type="password"],
.layout_1 input[type="email"],
.layout_1 textarea,
.layout_1 select {
height: 40px;
padding: 10px;
}
... что повлияет на #node-825
и #node-827
, но не на #node-826
Включите display_errors и установите для error_reporting значение E_ALL, и вы должны увидеть сообщение об ошибке «заголовки уже отправлены» - вам необходимо вызвать setcookie () ПРЕЖДЕ ЧЕМ ПОСЛАТЬ ЛЮБОЙ HTML. Из php.net/setcookie:
setcookie () определяет cookie как отправлено вместе с остальной частью HTTP заголовки. Как и другие заголовки, файлы cookie должен быть отправлен до любого вывода из ваш скрипт (это протокол ограничение). Это требует, чтобы вы размещать вызовы этой функции до любой вывод, включая и теги, а также любые пробелы.
В блоке кода, который вы разместили, этот бит:
<script>
function Redirect(url)
{
location.href = url;
}
</script>
выводится непосредственно в браузер задолго до того, как вы попытаетесь установить файлы cookie.
У вас есть две возможности: использовать буферизацию вывода, чтобы выводить все в самом конце, или переключиться на метод, в котором весь код обработки выполняется сначала в одном сценарии, и там вы устанавливаете значения $ _SESSION и cookie, а затем включите второй сценарий в конец первого, который содержит код для вывода в браузер.
1st you don't need session_register, you can just do.
Since session_register is the preferred method since 4.1.0 and deprecated as of PHP 5.3
$_SESSION["loginname"] = $_POST["loginname"]
2nd if you are going to use sessions, your flow could be better, since this does not work.
$_SESSION["foo"] = 1;
header("Location: stuff.php");
Then you can't view the session data in stuff.php. You could either send the user to the main page, and do the authentication there, and if it passes then you just continue on with the loading of the main page, and if it doesn't, then you send the user back to the login page like this.
if($_SESSION["authenticated"] == 0)
{
header("Location: login.php");
die();
}
Попробуйте это (указав корень вашего сайта):
setcookie("ID_my_site", $_POST['loginname'], $hour,'/');
или попробуйте это (добавив кавычки к вашему имени пользователя):
setcookie("ID_my_site", "$_POST['loginname']", $hour,'/');
Также вам не следует хранить пароль, это данные cookie - это большая безопасность Нет-Нет !!!
Если вы хотите сделать что-то подобное, установите уникальный - случайный - идентификатор, который изменяется при входе в систему и использует его вместо этого (вы все равно должны использовать MD5)