[英]How to allow user to add multiple values to array with php?
我有這個 php 文件,允許用戶輸入他們最喜歡的音樂藝術家。 我的程序將輸入的藝術家放入名為“art”的變量中,然后將其添加到名為“藝術家”的數組中。 然后它將數組顯示在項目符號列表中。 但是程序本身只允許一個值在數組中。 當用戶輸入另一位藝術家時,它會覆蓋數組中已經存在的藝術家。 例如,用戶將“bob”寫為他們最喜歡的藝術家並按下提交。 程序顯示 bob,但是當您 go 放入另一個藝術家“tess”時,bob 消失了,只顯示了 tess。 我該如何解決?
這是代碼:(不要介意注釋掉的回聲,這是一個測試,看看輸入的值是否被分配給變量。)
<h1> My Favorite Artist </h1>
<form method='POST'>
<h3>Please enter your favorite artist</h3>
<input type="text" name="artist">
<input type="submit" value="Submit Artist">
</form>
<?php
$art = $_POST['artist'];
//echo "<h3> This $art </h3>";
$artist = array();
array_push($artist, $art);
foreach ($artist as $a)
{
echo "<li>$a</li>";
}
?>
您可以嘗試創建一個 session 數組,然后像這樣打印它。
<?php
session_start();
?>
<h1> My Favorite Artist </h1>
<form method='POST'>
<h3>Please enter your favorite artist</h3>
<input type="text" name="artist">
<input type="submit" value="Submit Artist">
</form>
<?php
if(isset($_POST['artist']))
{
$art = $_POST['artist'];
//echo "<h3> This $art </h3>";
if(empty($_SESSION['artist']))
{
$_SESSION['artist'] = array();
}
array_push($_SESSION['artist'], $art);
$arry=$_SESSION['artist'];
if(!empty($arry))
{
foreach ($arry as $a)
{
echo "<li>$a</li>";
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.