shinjuo
shinjuo

Reputation: 21012

I have a php form dropdown menu that needs to send information

I have a dropdown menu that is filled by a mysql database. I need to select one and have it send the information for use on the next page after clicking submit. It does populate the drop down menu like it is supposed to it just does not seem to catch the data on the next page. Here is what I have:

removeMain.php

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<form action="remove.php" method="post">
<?php
    $link = mysql_connect('********', '********', '*********');
    if (!$link){
        die('Could not connect: ' . mysql_error());
    }
    mysql_select_db("********", $link);
    $res = mysql_query("SELECT * FROM cardLists order by cardID") or die(mysql_error()); 
    echo "<select name = CardID>"; 
    while($row=mysql_fetch_assoc($res)) { 
        echo "<option value=$row[ID]>$row[cardID]</a></option>"; 
    } 
    echo "</select>";
?>
Amount to Remove: <input type="text" name="Remove" />
<input type="submit" />
</form>
<body>
</body>
</html>

remove.php

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<?php
$link = mysql_connect('*********', '*********', '*********');
    if (!$link){
        die('Could not connect: ' . mysql_error());
     }

    mysql_select_db("***********y", $link);

 $query = sprintf("UPDATE cardLists SET AmountLeft = AmountLeft - %s WHERE cardID =  '%s'", mysql_real_escape_string($_POST["Remove"]), mysql_real_escape_string($_POST["CardID"]));
 mysql_query($query);
 mysql_close($link);
?>
<br />
<a href="removeMain.php"> <input type="submit" name="return" id="return" value="Update More" /></a>
<a href="index.php"> <input type="submit" name="main" id="main" value="Return To Main" /></a>
</body>
</html>

Upvotes: 0

Views: 1089

Answers (2)

tylerpenney
tylerpenney

Reputation: 239

echo "<select name = CardID>";

should be:

echo "<select name = \"CardID\">";

Upvotes: 1

Grumpy
Grumpy

Reputation: 2243

while($row=mysql_fetch_assoc($res)) { 
        echo "<option value=$row[ID]>$row[cardID]</a></option>"; 
    } 

echo "<option value=$row[ID]>$row[cardID]</a></option>"; should be
echo "<option value=$row[ID]>$row[cardID]</option>";

dont know if that solves your problem, but it was the first thing i noticed

Upvotes: 1

Related Questions