簡體   English   中英

如何允許用戶使用 php 向數組添加多個值?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM