divinity02 Ответов: 0

Как вы переходите с одной страницы на другую с помощью PHP


привет

в своем задании я пытаюсь перейти с одной страницы на другую с помощью php. это когда пользователь регистрируется ах хотел бы перейти на страницу приветствия давая пользователю знать что теперь он является членом регистра но проблема у меня возникает в том что в одну минуту он будет переходить на страницу входа в систему а в другой раз он сломается но в браузере вы видите как он пытается перейти на страницу входа в систему welcome.php но он сломался. не надо, если это что-то инт welcome.php страница-это то, что вызывает ее, или коды, которые я использую, - это проблема. не могу сказать, что есть что, хотя я использовал функцию заголовка, и она все равно не будет работать

может быть, кто-нибудь скажет мне, что не так, может быть, дополнительная пара глаз будет очень признательна. вот коды для обеих страниц.

Что я уже пробовал:

вот первые коды

<?php
		
		
		header('Location: welcome.php');
		
	
?>


<?php

		$register=$_POST['register_user']; 
		if(isset($register))//check to see if button has been clicked
		{
			
				//capture the variable from the form and store in php variables
			 
			
			$title=$_POST['title'];
			$fullname=$_POST['fullname'];
			$lastname=$_POST['lastname'];
			$screenname=$_POST['screenname'];
			$email=$_POST['email'];
			$gender=$_POST['gender'];
			$address=$_POST['address'];
			$mypwd=$_POST['mypwd'];
			
			//connecting to the server           
			$db_host="localhost";
			$db_user="root";
			$db_pass="";
			//include'db_server.php';
			
			$conn=mysqli_connect($db_host,$db_user,$db_pass) or die (mysqli_connect_error());
			
			//select the database you want to query
			
				mysqli_select_db($conn, 'national_wonders') or die (mysqli_error($conn));
				$sql="SELECT * FROM members WHERE screenname='$screenname'";
				$result= mysqli_query($conn, $sql) or die ("ERROR:" .mysqli_error());
				$rowcount=mysqli_num_rows($result);
				
			if($rowcount >= 1) //checking to see if screenname is already exist
			{
				 "<script type=\"text/javascript\">
					  alert('Screenname already exits!!');
					  window.location=/login.html\";
					   </script>";
			}
			else
			{
				//insert data into table
				
				$sql = "INSERT INTO members
				VALUES('$title', '$fullname', '$lastname', '$screenname', '$email', '$gender', '$address', MD5('$mypwd'))";
			
				if(mysqli_query($conn,$sql))
				{
					session_start();
					$_SESSION['user']=$screenname;
					mysqli_close($conn);
					
						
							
				}
				else
				{
					echo "Error inserting values into database";
				}
				//end of line
				
			}
			
		}
			
?>


вот коды для страницы приветствия
<?php
	session_start();
	if(!isset($_SESSION['view']))
	{
		header("location:../php/popupbox.php");
	}

?>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
	<head>
		<title> Welcome </title>
		<link rel="stylesheet" type="text/css" href="css/stylesheet.css" />
	</head>
	<body>
		<div id="container">
			
			<div id="header">
				<div  id="banner">
					<img src="images/header.jpg" alt="header" />
				</div>
			</div>
			<div id="navbar">
				<ul>
				
					<li><a  href="../index.html" id="tlinks" class="toplinks">Homepage</a></li>
					<li><a  href="featureNaturalWonders.html" id="thold" class="toplinks">Feature Natural Wonders</a></li>
					<li><a  href="contact.html" id="linkhold" class="toplinks" >Contact Us</a></li>
					<li><a  href="register.html" id="phold" class="toplinks"> Sign Up</a></li>
					<li><a  href="login.html" id="loglinks"class="toplinks"> Login</a></li>
					<li><a  href="aboutus.html" id="panlinks" class="toplinks"> About Us</a></li>
					 
				</ul>	
					<form method="post" id="search"   action="" >						
						<input type="text" name="search" value=""/>
						<input type="submit" value="Search"/>												
					</form>				
									
			</div>	

			


		<div id="contentArea">
			<h1>CONGRATULATIONS!!!!</h1>
		<p>
			You are now a registered member!!
		</p>
				
		<p>
			Please enter your screenname and password to see the information you have submitted. 
		</p>
					
		<form method="post" action="../PHP/data.php">
									
			*Screenname:   <input type="text" name="screenname" /> <br/><br/>
							
			*Password:   <input type="password" name="mypwd" /> <br/><br/>
						
			<input type="submit" value="VIEW" /> 
		</form>
			
			<div id="footerbox">
				
					<div id="footerholder">
						<div id="">
						
							<a href="../index.php">Homepage</a>
							<a href="popupbox.php">Popup box </a>
							<a href="featureNationalWonders.php">Feature National Wonders</a>						
								
								
						</div>
					
					</div>
			</div>
		</div>
		
	</body>
			
</html>

Richard Deeming

Проблема 1:
Ваш код уязвим для SQL-инъекций. НИКОГДА используйте конкатенацию строк / интерполяцию для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.

Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
PHP: SQL-инъекция - руководство пользователя[^]

divinity02

большое спасибо, Вау, я не думал об этом, большое спасибо, очень ценю

Richard Deeming

Задача 2:
Хорошая новость - вы не храните свои пароли в виде обычного текста.

Плохая новость - вы используете MD5, который совершенно небезопасен. И что еще хуже, вы не солите пароль.

Безопасная Аутентификация Паролем Объясняется Просто[^]
Соленое хэширование паролей - делаем это правильно[^]

PHP имеет встроенные функции, которые помогут вам правильно обращаться с паролями:

PHP: password_hash[^]
РНР: функцию password_verify[^]

0 Ответов