0

私はJavaScriptの経験がないので、PHPを使用してマルチレベルのドロップダウンメニューを作成しようとしていますが、それも学びたいと思っています。これを誰もが理解しやすいように、私は例として車を使用しています。ユーザーに「ブランド」の例のフォードを選択してもらいたいのですが、2番目のドロップダウンにフォードが作成した「モデル」が表示され、最後に3番目のドロップダウンにフォード車の「色」が表示されます。値をハードコーディングする代わりに、すべてのデータを動的にプルしたいMySQLデータベースを使用しています。最初のドロップダウンに「ブランド」を入力できますが、「ブランド」を選択すると、2番目のドロップダウンが表示されます。ドロップダウンには新しい結果が表示されません。私はPHPとMySQLを初めて使用しますが、非常に簡単に学習できます。これが私のコードです:

INSERT_DROPDOWN.PHP

 <?php
$con = mysql_connect("localhost","username","XXXXXXXXXX");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("database", $con);

// Write out BRANDS.
$dquery = "SELECT brand FROM manufacture ORDER BY brand";
// Execute it, or return the error message if there's a problem.
$dresult = mysql_query($dquery) or die(mysql_error());

// Write out MODELS.
$dquery1 = "SELECT 'brand', 'model' FROM models WHERE brand='$dresult' ORDER BY model";
// Execute it, or return the error message if there's a problem.
$dresult1 = mysql_query($dquery1) or die(mysql_error());


// Write out COLORS.
$dquery2 = "SELECT color FROM color ORDER BY color";
// Execute it, or return the error message if there's a problem.
$dresult2 = mysql_query($dquery2) or die(mysql_error());

// if successful insert data into database, displays message "Successful". 
if($dresult){
echo "Successful";
echo "<BR />";
}

else {
echo "ERROR1";
}

// close connection 
mysql_close();
?>

TESTING.PHP

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <LINK href="CLL.css" rel="stylesheet" type="text/css">
        <title> 
           testing
        </title>
    </head>
    <body>

<?php 
require "insert_dropdown.php";
?>

<p>
  <?php
    //Brand
    $dropdown = "<select name='brand'>";
      while($row = mysql_fetch_assoc($dresult)) 
    {

    $dropdown .= "\r\n<option value='{$row['brand']}'>{$row['brand']}</option>";

    }

    $dropdown .= "\r\n</select>";
    echo $dropdown;

    //Model
        $dropdown1 = "<select name='brand'>";
      while($row1 = mysql_fetch_assoc($dresult1)) 
    {

    $dropdown1 .= "\r\n<option value='{$row1['model']}'>{$row['brand']}</option>";

    }

    $dropdown1 .= "\r\n</select>";
    echo $dropdown1;

    //Color
        $dropdown = "<select name='name'>";
      while($row = mysql_fetch_assoc($dresult2)) 
    {

    $dropdown .= "\r\n<option value='{$row['color']}'>{$row['color']}</option>";

    }

    $dropdown .= "\r\n</select>";
    echo $dropdown;
  ?>
</p>
    </body>
</html>
4

1 に答える 1

0

AJAXを使用してコードを修正しました

于 2012-12-02T20:06:41.077 に答える