Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

PHP Build a Simple PHP Application Integrating with PayPal HTML Forms

Devin Scheu
Devin Scheu
66,191 Points

Help With Php

Here's the question: Challenge task 2 of 3 Next, we need the flavor selected in the dropdown to be submitted to this process.php file. We need to be able to access it in the “flavor” element of the $_POST array, like this: $_POST["flavor"]. What two changes do we need to make to the HTML? (Hint. We need to add two new attributes. The first needs to be added to one existing HTML element, the second needs to be added to a different existing HTML element.)

Here's my code:

<html>
<head>
    <title>Ye Olde Ice Cream Shoppe</title>
</head>
<body>

    <p>Your order has been created. What flavor of ice cream would you like to add to it?</p>

        <form action="process.php">

        <input type="hidden" name ="on0" value="flavor">
        <label for="flavor">Flavor</label>
        <select id="flavor" name="flavor">
            <option value="">&#8212; Select &#8212;</option>
            <option value="Vanilla">Vanilla</option>
            <option value="Chocolate">Chocolate</option>
            <option value="Strawberry">Strawberry</option>
            <option value="Cookie Dough">Cookie Dough</option>
        </select>

        <input type="submit" value="Update Order" name="submit">

    </form>

</body>
</html>

2 Answers

remember that all forms need a method. the method tells the server whether the form its getting information or posting information. In the case of this problem it's posting, so you need to add method="post" to the form element. Other than that it looks fine. let me know if this helps

Maximiliane Quel
Maximiliane Quel
Courses Plus Student 55,489 Points

sorry for cross-posting. should have checked whether it was already answered.

Maximiliane Quel
PLUS
Maximiliane Quel
Courses Plus Student 55,489 Points

You need to add a method to the form element. Also I am not sure why you added a hidden input field and a name attribute to the submission button? Not sure whether that would go through as an answer since technically it didn't ask for it?

here is what the code should look like:

<!DOCTYPE html>
<html>
<head>
    <title>Ye Olde Ice Cream Shoppe</title>
</head>
<body>

    <p>Your order has been created. What flavor of ice cream would you like to add to it?</p>

    <form action="process.php" method="post">

        <label for="flavor">Flavor</label>
        <select id="flavor" name="flavor">
            <option value="">&#8212; Select &#8212;</option>
            <option value="Vanilla">Vanilla</option>
            <option value="Chocolate">Chocolate</option>
            <option value="Strawberry">Strawberry</option>
            <option value="Cookie Dough">Cookie Dough</option>
        </select>

        <input type="submit" value="Update Order">

    </form>


</body>
</html>