0

複雑で長すぎるタイトルで申し訳ありませんが、私はこれらすべてに非常に慣れていないため、説明する方法や開始する方法がよくわかりませんでした...だから、やっただけです!

私が現在行っているのは、MySQL データベースから HTML ドロップダウン リストを生成することです。次に、ユーザーがドロップダウンから選択したオプションを取得し、そのデータを別のテーブルに入力したいと考えています。

テーブルからデータを取得するために使用しているコードは次のとおりです。

<td>Model of Bike</td>
<td><select type ="text" name="bikeBrand">
<?php 
    $sql = mysql_query("SELECT bikeDescr, bikeID FROM Bikes");
    while ($row = mysql_fetch_array($sql))
    {
        echo "<option value='bikeDescr'>" . $row['bikeDescr'] . "</option>";
    }
?>

ユーザーが目的のバイクを選択したら、それがトレックだとしましょう。その情報を取得して Insert into () Values () に入れ、ユーザーがどのバイクを選択したかを毎回追跡できるようにしたいと考えています。新しいチケットが作成されます。

問題を混乱させたり悪化させたりしていないことを願っていますが、私が何をする必要があるか、またはどこを見ればよいかについての助けをいただければ幸いです.

御時間ありがとうございます。

4

3 に答える 3

1

いくつかの改善を行うことをお勧めします。それらは次のとおりです。

1)selectタグには属性がないtypeため、正しい使用方法は次のとおりです。

<select name="bikeBrand">

2) データベースで bikeDescr フィールドと bikeID フィールドを取得しているので、bikeID を各オプションの値として使用し、bikeDescr を使用してオプションの名前を表示することをお勧めします。例えば:

<td>Model of Bike</td>
<td><select name="bikeBrand">

<?php 

    $sql = mysql_query("SELECT bikeDescr, bikeID FROM Bikes");

    while ($row = mysql_fetch_array($sql))
    {
        echo "<option value='" . $row['bikeID'] . "'>" . $row['bikeDescr'] . "</option>";
    }
?>

したがって、次のファイルで bikeBrand 値を取得して、データベースに挿入できます。

于 2012-07-07T04:11:36.137 に答える
0

次のステートメントを変更する必要があります。

echo "<option value='bikeDescr'>" . $row['bikeDescr'] . "</option>";

これに:

echo "<option value='" . htmlentities($row['bikeDescr']) . '>" . $row['bikeDescr'] . "</option>";

これはすべてフォーム内にある必要があります。クエリについてINSERTは、同じページで、またはボタンをクリックした後またはフォームが送信された後に呼び出すことを考えていますか?

于 2012-07-07T04:03:14.767 に答える
0

値を取得するには、別の php ファイルとしてフォームでアクションを実行します。

<form action="submit.php" method="POST">
<td><select name="bikeBrand">
<?php 
    $sql = mysql_query("SELECT bikeDescr, bikeID FROM Bikes");
    while ($row = mysql_fetch_array($sql))
    {
        echo "<option value='". $row['bikeDescr'] ."'>" . $row['bikeDescr'] . "</option>";
    }
?>
</form>

submit.php は次のようになります

$value = $_POST['bikeBrand']
if(isset($value)){
// Database info goes here//
$sql = mysql_query("INSERT INTO table VALUES('$value')");
}
于 2012-07-07T04:07:14.357 に答える