简体   繁体   中英

HTML form submit multiple values

I need to have the submitted fruit names to be printed after "Sadrzaj korpe:", ie "apple, orange, banana".

My code only prints one fruit.

<form>  
    <label for="voce">Voce:</label>
    <input type="text" name="voce">
    <input type="submit" name="submit" value="Ubaci voce u korpu"><br>

 </form>  
    <?php
 if ($_GET["submit"]){
        if ($_GET["voce"]){ 
                echo "Sadrzaj korpe je ".$_GET['voce'];
            }
        }           

Regarding the backend (From here ):

input type="text" name="hoursWorked[]" /> will internally convert to an array under $_POST['hoursWorked'] .

That means you can do something like this with the form:

<form method="post" action="collect_vals.php">
<div class="input_fields_wrap">
    <button class="add_field_button">Add More Fields</button>
    <div><input type="text" name="mytext[]"></div>
    <div><input type="text" name="mytext[]"></div>
    <div><input type="text" name="mytext[]"></div>
    <div><input type="text" name="mytext[]"></div>
    <div><input type="text" name="mytext[]"></div>
</div>
</form>

Then, in PHP:

<?php
if(isset($_POST["mytext"])){       
    $capture_field_vals ="";
    foreach($_POST["mytext"] as $key => $text_field){
        $capture_field_vals .= $text_field .", "; //Here is where the values are concated to $capture_field_vals
    }
    echo $capture_field_vals;
}
?>

Regarding the dynamic form (From here ):

The JavaScript:

$(document).ready(function() {
    var max_fields      = 10; //maximum input boxes allowed
    var wrapper         = $(".input_fields_wrap"); //Fields wrapper
    var add_button      = $(".add_field_button"); //Add button ID
    var x = 1; //initlal text box count
    $(add_button).click(function(e){ //on add input button click
        e.preventDefault();
        if(x < max_fields){ //max input box allowed
            x++; //text box increment
            $(wrapper).append('<div><input type="text" name="mytext[]"/><a href="#" class="remove_field">Remove</a></div>'); //add input box
        }
    });

    $(wrapper).on("click",".remove_field", function(e){ //user click on remove text
        e.preventDefault(); $(this).parent('div').remove(); x--;
    })
});

The HTML form itself:

<div class="input_fields_wrap">
    <button class="add_field_button">Add More Fields</button>
    <div><input type="text" name="mytext[]"></div>
</div>

Firstly, you can use isset() to check for $_GET, $_POST etc values.

Secondly, if I understand you correctly, you want to submit several fruit one after another and display them all in real-time?

For that you should use Ajax .

Otherwise, if your goal is only to dynamically display data added on the client then use client side with a library like AngularJS or any other ones that use two-way data binding.

You don't need server side if just showing data changed data set to a user? You can send data to server when user has finished adding his list of fruits.

Refer this link

  if (isset($_POST["submit"])) {
        echo "Yes";     
  }else{  
       echo "N0";
  }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM