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

Carla Thomas
seal-mask
.a{fill-rule:evenodd;}techdegree
Carla Thomas
Front End Web Development Techdegree Student 16,039 Points

PayPal Button challenge (task 3 of 3)

I am having a problem with Task 3 of the PayPal Button challenge. Here are the instructions:

...We need the form to submit a unique identifier for the order to the process.php file. We need to be able to access that value in an order_id element of the $_POST array, like this: $_POST["order_id"]. For this particular order, the order ID should be 7546. We don’t want this value displayed in the browser. What do we need to add to the form? (Hint: We need to add a new HTML element with three attributes.)"*

Here is my (partially correct) answer:

<input type="hidden" id="order_7546" value="flavor">

The "Bummer!" message I get is this:

** It looks like you have added a hidden input field with a value correctly, but it's missing the other attribute it needs. **

Here is the complete code:

<!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" name="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="hidden" id="order_7546" value="flavor">
        <input type="submit" value="Update Order">


    </form>

</body>
</html>

2 Answers

Ron McCranie
Ron McCranie
7,837 Points

To pass data via POST or GET you need two attributes on the input element: Name (order_id), and Value (7546). So add the name attribute to get the expected result.

James is right. My english is not enough. And I need final codes.