Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

PHP Build a Simple PHP Application Integrating with PayPal HTML Forms

help, please :)

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.)

form.html
<!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>
<?php
$flavor = $_POST["flavor"];
?>
    <form action = "process.php">

        <label for="flavor">Flavor</label>
        <select id="flavor" disabled>
            <option value="Select"> Select </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">

        <?php include('inc/process.php'); ?>
    </form>

</body>
</html>

4 Answers

geoffrey
geoffrey
28,724 Points

First off, you need to add a name attribute to the select dropdown with the value of "flavor" as It's what you need as key in the global $_POST array. So as an example if you select chocolate and then post the form, you 'll have $_POST["flavor"] = "chocolate", lastly if you want to be able to submit you form with the post method, you need to add the action attribute with post as value. Check the code for more details.

<!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>
<?php
$flavor = $_POST["flavor"];
?>
    <form action = "process.php" method="post">

        <label for="flavor">Flavor</label>
        <select id="flavor" name="flavor" >
            <option value="Select"> Select </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">

        <?php include('inc/process.php'); ?>
    </form>

</body>
</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;<?php  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">

this one has something that is missing so check the other one

<!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="$_POST[flavor]">&#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>

thanks!