Как правильно использовать синтаксис "<?php
" и "?>
"? Я обнаружил, что вы можете смешивать открывающие и закрывающие теги с открывающими и закрывающими скобками, чтобы использовать другие языки, но правильно ли я это делаю? Страница приветствия вызывает оператор else, когда она должна вводить оператор if.
Я хочу сделать каждую страницу недоступной, если пользователь не вошел в систему, поэтому я настроил ее следующим образом.
Вот код файла логина
<?php
$uname=$_POST['uname'];
$password=$_POST['password'];
$password = md5($password);
require_once('connection.php');
$query = "SELECT * FROM `login_info` WHERE `uname`='$uname' && `password`='$password'";
$stmt = $pdo->prepare($query);
$stmt->execute();
$count=$stmt->rowCount();
if($count==1)
{
echo "Login success";
$_SESSION['log']=1;
$_SESSION['uname'] = $_POST['uname'];
header("refresh:1;url=welcome.php");
}
else
{
echo "Login Credentials Not Found";
echo"<a href='index.php'><br/><br/>Back to Login Page</a>";
}
?>
а вот и welcome.php
<?php
require_once('connection.php');
session_start();
if(isset($_SESSION['log']))
{
?>
<!DOCTYPE html>
<html>
<style>
#quicklinks
{
padding-right: 15px;
}
</style>
<body>
<h2>LINKS</h2>
<a id="quicklinks" href="welcome.php" >Welcome</a>
<a id="quicklinks" href="findwords.php" >search users favourite words</a>
<a id="quicklinks" href="editwords.php" >edit your favourite word</a>
<a id="quicklinks" href="antclicker.php" >play the ant game</a>
<a id="quicklinks" href="antgameleaderboard.php" >ant game world leaderboard</a>
<a id="quicklinks" href="chat.php" onclick="window.open('chat.php','newwindow','width=450,height=650'); return false;">chat</a>
<a href="index.php" >logout</a>
<p>Hello and welcome to my website!</p>
</body>
</html>
<?php
}
else
{
echo "You are not logged in, please login";
echo"<a href='index.php'><br/><br/>Login Page</a>";
}
?>
Как видите, код php разбит на части кода html, но отдельные блоки php напрямую связаны. Я думаю, что простота $_SESSION['log']=1;
и if(isset($_SESSION['log']))
должна работать. Проблема в том, что страница приветствия возвращается к оператору else, хотя индекс 'log' должен быть установлен, верно? Вот почему я думаю, что это должно быть проблемой.