#php #mysql #session
#php #mysql #сессия
Вопрос:
Я довольно смущен тем, как работают сеансы. Я использую функции GET и использую сеансы, однако кажется, что я застрял. Мое возвращаемое значение не изменится, даже если я нажму на другой отдел.
<?php
session_start();
while ($row = mysqli_fetch_assoc($select_submission_result)) {
$adopt_id = $row['a_id'];
$promote_id = $row['p_id'];
$adopt_dept = $row['a_department'];
$promote_dept = $row['p_department'];
echo "<tr>";
echo "<td>";
echo $i ;
echo "</td>";
echo "<td>";
echo "<a href ='ideaSubmission.php?a_id = $adopt_id' style='color: black; text-decoration: none;'>" . $row['a_title'] . "</a>";
echo "</td>";
echo "<td>";
echo "<a href ='viewDepartment.php?a_department = $adopt_dept' style='color: black; text-decoration: none;'>" . $row['a_department'] . "</a>";
echo "</td>";
echo "<td>";
echo "<a href ='ideaSubmission.php?p_id = $promote_id' style='color: black; text-decoration: none;'>" . $row['p_title'] . "</a>";
echo "</td>";
echo "<td>";
echo "<a href ='viewDepartment.php?p_department = $promote_dept' style='color: black; text-decoration: none;'>" . $row['p_department'] . "</a>";
echo "</td>";
echo "</tr>";
}
$_SESSION['a_department'] = $_GET[$adopt_dept];
?>
Я нажимаю на гиперссылку, которая ведет наviewDepartment.php , и другая страница, на которую он будет перенаправлять, это:
<?php
session_start();
if (isset($_GET['a_department'])) {
$adopt_dept = $_GET['a_department'];
} else {`enter code here`
echo"not working";
}
?>
<?php echo "$adopt_dept"; ?>
Комментарии:
1. погуглите это …. это не обучающий сайт
Ответ №1:
Вы должны проверять сеанс, а не get:
<?php
session_start();
$adopt_dept = '';
if (isset($_SESSION['a_department'])) {
$adopt_dept = $_SESSION['a_department'];
} else {
echo"not working";
}
?>
<?php echo $adopt_dept ?>
Комментарии:
1. Возможно, из-за незначительных ошибок: (а) если session var не существует, в последней строке появится уведомление, (б) в предложениях
if
иelse
нет отступов, (в) кавычки вокруг переменной в последней строке не нужны. Я только что исправил синтаксическую ошибку. Не серьезные проблемы, но здорово, если вы можете отредактировать их, чтобы исправить!