@niziko

Почему неправильно отображается страница во всех браузерах кроме Mozilla?

Добрый день, не большая проблема появилась :( Скрипт php регистрации не работает в других браузерах кроме Мозиллы. После удачного входа на сайт при обратном нажатии кнопки "Личный кабинет" должно выводиться сообщение " Привет USERNAME ," и кнопка выхода , на Мозилле так и отображается а в Хром нет. Даже после удачного входа на сайт показывает окно " Вы не авторизованны"
Сайт TESTProblema
Данные для входа : login: admin1 password: 123456
Спасибо всем заранее за помощь!

<!DOCTYPE HTML>

<html>
<?php 
	require 'db.php';


?>
	<head>
		<title>990033423.az -</title>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
		<link rel="stylesheet" href="assets/css/main.css" />
		<link rel="stylesheet" href="assets/css/ie9.css" />
		<noscript><link rel="stylesheet" href="assets/css/noscript.css" /></noscript>
	</head>
	<body>

			<div id="wrapper">

		
					<header id="header">
						<div class="logo">
							<span class="icon fa-diamond" ></span>
						</div>
						<div class="content">
							<div class="inner">
								<h1>testtest</h1>
								<p>sadadadaasdadadasadasadasd</p>
							</div>
						</div>
						<nav>
							<ul>
								<li><a href="#">Главная</a></li>
							
							
								<li><a href="#registr1">Личный Кабинет</a></li>
							
							</ul>
						</nav>
					</header>


					<div id="main">

					


							<article id="login">


								<center><h2 class="major">Вход</h2></center>

								<form  method="POST">
									<div class="field half first">
										<label for="name">Логин</label>
										<input input type="text" placeholder="Пример:User123" name="login"  value="<?php echo @$data['login']; ?>"/>
									</div>
									<div class="field half">
										<label for="email">Пароль</label>
										<input type="password" name="password" placeholder="Пример:12345678" value="<?php echo @$data['password']; ?>"/>
									</div>
									
									<ul class="actions">
										<center><button type="submit" name="do_login" class="special">Войти</button></center>
										
									</ul>

								</form>
								<?php 
	

	$data = $_POST;
	if ( isset($data['do_login']) )
	{
		$user = R::findOne('users', 'login = ?', array($data['login']));
		if ( $user )
		{
			//логин существует
			if ( password_verify($data['password'], $user->password) )
			{
				//если пароль совпадает, то нужно авторизовать пользователя
				$_SESSION['logged_user'] = $user;
				echo '<center><h3><div style="color:Green;">Вы авторизованы!<br/> <meta http-equiv="refresh" content="1;URL=#" /></div></h3></center><hr>';
			
			}else
			{
				$errors[] = 'Неверно введен пароль!';
			}

		}else
		{
			$errors[] = 'Пользователь с таким логином не найден!';
		}
		
		if ( ! empty($errors) )
		{
			//выводим ошибки авторизации
			echo '<center><h3><div id="errors" style="color:red;">' .array_shift($errors). '</div></h3></center><hr>';
		}

	}

?>
   
							

							</article>


<article id="reg">


								<center><h2 class="major">Регистрация</h2></center>

								<form  method="POST">
									<div class="field half first">
										<label for="name">Ваш Логин</label>
										<input type="text" name="login" value="<?php echo @$data['login']; ?>"/>
									</div>
									<div class="field half">
										<label for="email">Email</label>
										<input type="email" name="email" value="<?php echo @$data['email']; ?>"/>
									</div>
									<div class="field half first">
										<label for="name">Ваш Пароль</label>
										<input type="password" name="password" value="<?php echo @$data['password']; ?>"/>
									</div>
									<div class="field half">
										<label for="email">Повторите пароль</label>
										<input type="password" name="password_2" value="<?php echo @$data['password_2']; ?>">
									</div>
									
									<ul class="actions">
										<center><button type="submit" name="do_signup" class="special">Зарегистрироваться</button></center>
										
									</ul>
<?php 
	

	$data = $_POST;

	function captcha_show(){
		$questions = array(
			1 => 'Столица России',
			2 => 'Столица США',
			3 => '2 + 3',
			4 => '15 + 14',
			5 => '45 - 10',
			6 => '33 - 3'
		);
		$num = mt_rand( 1, count($questions) );
		$_SESSION['captcha'] = $num;
		echo $questions[$num];
	}

	//если кликнули на button
	if ( isset($data['do_signup']) )
	{
    // проверка формы на пустоту полей
		$errors = array();
		if ( trim($data['login']) == '' )
		{
			$errors[] = 'Введите логин';
		}

		if ( trim($data['email']) == '' )
		{
			$errors[] = 'Введите Email';
		}

		if ( $data['password'] == '' )
		{
			$errors[] = 'Введите пароль';
		}

		if ( $data['password_2'] != $data['password'] )
		{
			$errors[] = 'Повторный пароль введен не верно!';
		}

		//проверка на существование одинакового логина
		if ( R::count('users', "login = ?", array($data['login'])) > 0)
		{
			$errors[] = 'Пользователь с таким логином уже существует!';
		}
    
    //проверка на существование одинакового email
		if ( R::count('users', "email = ?", array($data['email'])) > 0)
		{
			$errors[] = 'Пользователь с таким Email уже существует!';
		}

		

		if ( empty($errors) )
		{
			//ошибок нет, теперь регистрируем
			$user = R::dispense('users');
			$user->login = $data['login'];
			$user->email = $data['email'];
			$user->password = password_hash($data['password'], PASSWORD_DEFAULT); //пароль нельзя хранить в открытом виде, мы его шифруем при помощи функции password_hash для php > 5.6
			R::store($user);
			echo '<center><h3><div style="color:dreen;">Вы успешно зарегистрированы! Войдите в Систему! <meta http-equiv="refresh" content="1;URL=#registr1" /></div></h3></center><hr>';
		}else
		{
			echo '<center><h3><div id="errors" style="color:red;">' .array_shift($errors). '</div></center></h3><hr>';
		}

	}

?>

								</form>
								

							</article>



<article id="registr1">
								
					

<?php if ( isset ($_SESSION['logged_user']) ) : ?>
	<center><h2 class="major">Авторизован!</h2></center> <br/>
	<center><h3 >Привет,</h3><h2> <?php echo $_SESSION['logged_user']->login; ?>!</h2></center><br/>
<ul class="actions">
	<li><a href="logout.php" class="button special">Выйти</a></li>
</ul>
<?php else : ?><center><h2 class="major">
Вы не авторизованы!</h2></center><br/>
	<center><ul class="actions">
	<li><a href="#login" class="button special">Авторизация</a></li>
	<li><a href="#reg" class="button special">Регистрация</a></li></ul></center>
<?php endif; ?>



							</article> 

					</div>

		
					<footer id="footer">
			
					</footer>

			</div>

			<div id="bg"></div>

	
			<script src="assets/js/jquery.min.js"></script>
			<script src="assets/js/skel.min.js"></script>
			<script src="assets/js/util.js"></script>
			<script src="assets/js/main.js"></script>

	</body>
</html>
  • Вопрос задан
  • 147 просмотров
Пригласить эксперта
Ответы на вопрос 1
nikolayshabalin
@nikolayshabalin
Автор профессиональных курсов в HTML Academy
Используйте другой редактор кода, который сможет подсветить Ваш код. Например, какой-нибудь phpStorm.

У вас неправильный порядок закрытия тегов и редактор об этом говорит.

Например, у Вас есть такой кусок кода.
<center><h3><div id="errors"> ... </div></center></h3>


Пробегитесь по своему коду и поищите ещё таких несоответствий.

То что Firefox смог закрыть теги правильно это очень хорошо, но скорее всего он просто откинул непонятные теги, а другие браузеры сломались
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы