Taariq
Taariq

Reputation: 87

Foreach - How to print a only the third and 4th value

I have form with the option to add more fields. I'd like to know if i could print the individual values of a foreach loop. eg. if the person added to forms and i want to print the second value how would i do that ? So Far what i have tried only printed the first Character.

HTML

<form action="careerHistoryCon.php" method="post" enctype="multipart/form-data"> 
<label for="industry[]">Industry Segmentation</label>
<input type="text" name="industry[]" id="" placeholder="Finance / Insurance ...."><br>
<p>To add another feild <a href="#" id="addMore">Click here</a> </p> <br><br>
</form>

JQ

  $("#addMore").click(function(){   
$(".form-group:last").clone().appendTo(".wrapper");  
});

PHP - Problem here

if ($_SERVER["REQUEST_METHOD"] == "POST") { 

if (isset($_POST['submit'])){

    $industry= $_POST['industry'];
    foreach ($industry as $key => $value) {


        echo $value[0]. '<BR>'; 
        echo $value[1]. '<BR>'; 




    }
}

Upvotes: 0

Views: 534

Answers (1)

clash
clash

Reputation: 427

You are pretty near to the solution. Using foreach on an array gives you the index as key.

foreach ($industry as $key => $value) {
    if($key == 1) echo $value; // array starts with 0, so 1 is the second element.
}

or you can use an iterator

// using foreach
$i = 0;
foreach ($industry as $key => $value) {
    if($i == 1) echo $value;
    $i++;
}

//using for
for($i = 0; $i < count($industry); $i++) {
    if($i == 1) echo $industry[$i];
}

btw. since $value is the input string of the user, $value[0] would just be the first letter the user entered. Because a string is just an array of chars.

Upvotes: 1

Related Questions