Подскажите плиз как на странице делается проверка авторизован юзер или нет. Я предполагаю, что в php-фрагменте необходимо посмотреть есть ли соотвествующая кука и если есть, то получить из нее идентификатор пользователя, отправить запрос на сервер, получить имя пользователя и вывести его имя на странице. Но вот даже с таким фрагментом у меня возникла проблема: на странице юзеру выводятся обе текстовые строки и часть кода. PHP: <body> <div class="autorize"> <div> <?php if (empty ($_COOKIE['Auth'])) { <h4>Вы не авторизованы на сайте</h4> } else { <h4>Вы авторизованы на сайте</h4> } ?> </div> </div> </br>
@Сереганек хранить идентификатор пользователя лучше в сессии, так как cookie хранятся у пользователя в браузере и он может их менять, а в сессию ты сам из кода только пишешь данные. Тут подробнее.
вот так выглядит этот фрагмент на странице. --- Добавлено --- Это подправил. Но на странице пока то же, что и было (как на скрине) --- Добавлено --- Как раз в этом вся фишка, мне это нужно для теста на иньекции (в учебных целях).
@Сереганек <?php if (empty ($_COOKIE['Auth'])) { echo '<h4>Вы не авторизованы на сайте</h4>'; } else { echo ' <h4>Вы авторизованы на сайте</h4>'; } ?> так пробуй мб сервер не поддерживает вставку пхп. те без хтмл
так это локалхост на денвере, я не ставил никаких ограничений. Сейчас проверю как работает на wamp --- Добавлено --- На wamp все аналогично
HTML: <!DOCTYPE html> <head> <meta charset="UTF-8"> <title>Изучаем иньекции</title> <link rel="stylesheet" type="text/css" href="/mysql.ua/css/style.css"> <link rel="shortcut icon" href="/mysql.ua/img/favicon.ico"> </head> <body> <div class="autorize"> <div> <?php if (empty ($_COOKIE['Auth'])) { echo '<h4>Вы не авторизованы на сайте</h4>'; } else { echo '<h4>Вы авторизованы на сайте</h4>'; } ?> </div> </div> </br> <div class="content"> <table class="maintable"> <tbody> <tr> <td> <h2>Авторизация</br> через GET-запрос</h2> <form action="/mysql.ua/php/auth.php" method="get"> <table class="childtable"> <tbody> <tr> <td class="first_col"> <label for="login">Логин:</label> </td> <td class="second_col"> <input type="text" name="login" id="login" class="sh"> </td> <td class="third_col"></td> </tr> <tr> <td class="first_col"> <label for="password">Пароль:</label> </td> <td> <input type="text" name="password" id="password" class="sh"> </td> <td></td> </tr> <tr class="options"> <td></td> <td><input type="checkbox" name="is_empty">Включить проверку на пустые поля</br></td> <td></td> </tr> <tr class="option
@Сереганек можешь сам попробовать,- выкинь весь хтмл оставив только код выводит только один результат впрочем иного и быть не может
Удалил почти весь код - ошибка не исчезла HTML: <!DOCTYPE html> <head> <meta charset="UTF-8"> <title>Изучаем иньекции</title> <link rel="stylesheet" type="text/css" href="/mysql.ua/css/style.css"> <link rel="shortcut icon" href="/mysql.ua/img/favicon.ico"> </head> <body> <?php if (empty ($_COOKIE['Auth'])) { echo '<h4>Вы не авторизованы на сайте</h4>'; } else { echo '<h4>Вы авторизованы на сайте</h4>'; } ?> </body> </html> На скрине - это по сути вся страница, больше там ниче нет. Есть у кого-нибудь идеи или варианты по какой причине такое может происходить?
@Сереганек ну судя по скрину первое <h4> переводит п хтмл и видимо из-за '>' который воспринимается как конец пыха попробуй '<h4/>' но всё же интересно почему это происходит когдато-гдето видел заметку о прерывании пыха так там говорилось о настраивании <? <?php и тд видимо вот эти настройки у тебя и не стандартны