Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何根据MySQL中的自动填充?_Javascript_Php_Html_Mysql - Fatal编程技术网

Javascript 如何根据MySQL中的自动填充?

Javascript 如何根据MySQL中的自动填充?,javascript,php,html,mysql,Javascript,Php,Html,Mysql,我没有PHP、HTML或JavaScript方面的经验,我请求帮助 我有显示一个select的php代码,这个select的字符串来自MySQL数据库和两个输入字段。 MySQL表格g_成就格式: id; achievement; craft_1_points; craft_2_points; 0; Medal Gold; 5; 8; 1; Medal Silver; 10;

我没有PHP、HTML或JavaScript方面的经验,我请求帮助

我有显示一个select的php代码,这个select的字符串来自MySQL数据库和两个输入字段。 MySQL表格g_成就格式:

id;     achievement;        craft_1_points;     craft_2_points;  
0;      Medal Gold;         5;                  8;  
1;      Medal Silver;       10;                 15;  
当我在选择字段中选择时,我需要通过来自craft_1_点和craft_2_点的数据自动填充输入

我的代码:

echo "<label for=\"achievement_id\">Achievement</label><br/>";
    $sql2 = "SELECT * FROM g_achievement";
    $result_select2 = mysql_query($sql2);
    /*drop-down list*/
    echo "<select name = 'achievement'>";
    while($object2 = mysql_fetch_object($result_select2)){
        echo "<option value = '$object2->achievement'>$object2->achievement</option>";
    }
    echo "</select>";
//============================
    echo "<label for=\"craft_1\">Craft 1</label><br/>";
    echo "<input type=\"number\" name=\"craft_1\" size=\"30\"><br/>";
    echo "<label for=\"craft_2\">Craft 2</label><br/>";
    echo "<input type=\"number\" name=\"craft_2\" size=\"30\"><br/>";
我需要使用什么语言?JavaScript?我需要什么代码


请帮帮我。谢谢。

为此,您必须以两种方式使用Javascript

您可以从表中提取所有这些数据到客户端,然后通过Javascript从下拉列表中选择任何选项,您可以在输入框中填充相关值。 在从下拉列表中选择任何选项时,可以对服务器端进行Ajax调用,从服务器端获取数据,并使用Javascript填充客户端的数据。 下面是我上面描述的第一种方式的一个例子

<?php
    // Following is a sample data. You can replace this data by getting it from your DB
    $dataSource = array(
            0 => array(
                    'achievement' => 'Medal Gold',
                    'craft_1_points' => 5,
                    'craft_2_points' => 8,
                ),
            1 => array(
                    'achievement' => 'Medal Silver',
                    'craft_1_points' => 10,
                    'craft_2_points' => 15,
                )
        );

    $dataSourceInJson = json_encode($dataSource);
?>

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
    <script type="text/javascript">
        $( document ).ready(function() {
            var dataSource = '<?php echo $dataSourceInJson; ?>';

            $( "#achievements" ).click(function() {
                var achievementSelected = $(this).val();

                $.each(JSON.parse(dataSource), function( index, value ) {
                    var achievementType = value.achievement;

                    if(achievementSelected == achievementType){
                        // Extract related Craft values from JSON object
                        var craft_1_points = value.craft_1_points;
                        var craft_2_points = value.craft_2_points;

                        // Place craft value in respective INPUT box
                        $('#craft_1_points').val(craft_1_points);
                        $('#craft_2_points').val(craft_2_points);
                    }

                });
            });
        });
    </script>
</head>
<body>
    <select id='achievements' name="achievements">
        <option value="">Select Achivements</option>
        <?php
            foreach ($dataSource as $key => $value)
            {
                echo "<option value='$value[achievement]'>$value[achievement]</option>";
            }
        ?>
    </select>

    <br>Craft 1<br>
    <input type="text" id="craft_1_points" name="craft_1_points" value="">

    <br>Craft 2<br>
    <input type="text" id="craft_2_points" name="craft_2_points" value="">
</body>
</html>

搜索php ajax级联选择你很好,非常感谢!只有我在Wordpress中使用了这段代码,我需要用jQuery替换$。很高兴知道这对您有帮助。
set dbConn=Server.CreateObject("ADODB.Connection")
dbConn.Open strProvider
rowCount=0
sqlTable = "select id, name from [sysobjects] where type in ('U','V','P') and category<>2 Order By Name "
set rsSchema=dbConn.execute(sqlTable)
%>
<select  name="getTable" class="selectpicker form-control show-tick" data-live-search="true">
<%
do until rsSchema.EOF %>
 <option value='<%=rsSchema(0)%>'><%= rsSchema(1)%>
<% rsSchema.MoveNext
loop
rsSchema.Close
set rsSchema = Nothing %></option>
</select>