У меня была эта проблема в течение пары дней, и я пытаюсь по-другому пытаться ее исправить, и я никуда не денусь. В основном я извлекаю данные из базы данных, отображая данные с помощью цикла, добавляя кнопку «удалить» и сохраняя данные в массиве сеансов.переменная сеанса php не обновляется после сообщения
Когда пользователь нажимает кнопку удаления, страница обновляется, но моя переменная сеанса не обновляется. Может ли кто-нибудь сказать мне, почему? Я использую if isset «POST» для обновления моей переменной сеанса. FYI есть много дополнительных эхо-сигналов в моем коде, чтобы я мог видеть, что происходит. Любые предложения будут ценны. Я также добавил всплывающее окно JavaScript, чтобы узнать, работает ли оператор if. Всплывающее окно тоже не подходит.
<?php
function multilineQ($con, $sql)
{
$x = 0; // incremented for the ex number
if (mysqli_multi_query($con,$sql))
{
do
{
// Store first result set
if ($result=mysqli_store_result($con))
{
while ($row=mysqli_fetch_assoc($result))
{
$button = "ex" . $x . "Button";
echo "<ex id=\"ex$x\">";
echo $row['ExType'] . ' ----- ' . $row['ExName'] . " " .
"<input type=\"submit\"
name=\"$button\"
value=\"Delete\"> " .
" - <b>Button Name: </b>" . $button;
echo "<br />";
echo "</ex>";
// Add to Array
// ----------------------
$_SESSION['exArray'][$x][0] = 1;
$_SESSION['exArray'][$x][1] = $row['ExType'];
$_SESSION['exArray'][$x][2] = $row['ExName'];
// ----------------------
// If delete button pressed...
// ----------------------
echo "$button If statement created <br /><br />";
if (isset($_POST['$button']))
{
$_SESSION['exArray'][$x][0] = 0;
$foo = "Alert: " . $_SESSION['exArray'][$x][3] . " : Deleted.";
echo "<script type='text/javascript'>alert('$foo')</script>";
}
// ----------------------
$x++; // Increment number
}
mysqli_free_result($con);
}
} while (mysqli_next_result($con));
} else
{
echo 'Could not run SQL...';
}
}
?>
добавить session_start() в верхней части файла .. –
'$ button' в одинарные кавычки. Этот отступ также болезнен для чтения: < – Amelia
Спасибо, я понимаю, что вы говорите. Я удалил кавычки, но это не устранило проблему. –