array_push не добавляет 2-й элемент после обновления страницы

Я понимаю, что array_push не добавляет 2-й элемент, потому что, когда страница обновляется после добавления другого элемента, оригинальный элемент исчезает и получает замену самой последней записью из текстового поля.

Я пытаюсь достичь этой тактики, пытаясь либо …

а. Пусть сеанс запомнит следующий добавляемый элемент через обновление страницы.

или же

б. Просто не обновлять страницу вообще.

Смотрите демо здесь: http://query.notesquare.me/home.html/

КОД

<form method="post">
<input type="text" id="input-create-playlist" placeholder="Playlist Name" name="create_playlist" />
<input type="submit" id="button-create-playlist" value="Create Playlist" />
</form>

<?php
session_start();

$create_playlist = $_POST['create_playlist'];

$playlists = array("One", "Two", "Three");

$_SESSION['main'] = $playlists;

array_push($playlists, $create_playlist);

for ($i = 0; $i < count($playlists); $i++) {
echo $playlists[$i] . "<br />";
}
?>

2

Решение

Пытаться

<form method="post">
<input type="text" id="input-create-playlist" placeholder="Playlist Name" name="create_playlist" />
<input type="submit" id="button-create-playlist" value="Create Playlist" />
</form>

<?php
session_start();

$create_playlist = $_POST['create_playlist'];

$_SESSION['user_playlists'][] = $create_playlist;

$playlists = array("One", "Two", "Three");

for ($i = 0; $i < count($_SESSION['user_playlists']); $i++) {
array_push($playlists, $_SESSION['user_playlists'][$i]);
}

$_SESSION['main'] = $playlists;

for ($i = 0; $i < count($playlists); $i++) {
echo $playlists[$i] . "<br />";
}
?>

Ваш подход устанавливал $_SESSION['main'] = $_POST['create_playlist'] до желаемого эффекта array_push,

2

Другие решения

Других решений пока нет …