sql >> データベース >  >> RDS >> Mysql

SQLデータベースから動的にロードされた選択オプション値に基づいてテキスト値を入力します

    これは2つの方法で行うことができます:

    最初の方法 $_GETを持つページをリダイレクトすることです 製品IDを含むパラメータ:

    <div class="row-fluid">
        <div class="span3">
            <label>SKU</label>
            <?php  echo '<select name="ITEM" id="user" class="textfield1" 
                          onchange="document.location=\'my-page.php?pid=\' + this.value">';
            while($res= mysql_fetch_assoc($sql))
            {
              echo '<option value="'.$res['productID'].'"';
              // LATER EDIT
                if(isset($_GET['pid']) && $_GET['pid'] == $res['productID'])
                  echo 'selected="selected"';
              // END LATER EDIT
              echo '>';
              echo $res['SKU'] ; 
              echo'</option>';
            }
            echo'</select>';
    
            ?>
        </div>
    </div>
    <div class="row-fluid">             
        <div class="span3">
            <label>Description</label>
            <?php
                if(isset($_GET['pid']) && is_numeric($_GET['pid'])) {
                    $sql = mysql_query("SELECT description 
                                        FROM products 
                                        WHERE product_id='" . mysql_real_escape_string($_GET['pid']) . "'");
                    $row = mysql_fetch_assoc($sql);
                }
            ?>
            <input type="text" name="description" value="<?=$row['description']?>"/>
        </div>
    </div>
    

    2番目の方法 ページを再表示せずに、ajax呼び出しと入力の説明を動的に入力することです

    // this is the JS code
    $(document).ready(function(){
       $('#user').change(function(){
           $.POST("my-ajax-call-page.php",
                   {pid: $("#user").val()},
                   function(data){
                       $('input[name="description"]').val(data.description);
                   }, "json");
       });
    });
    

    そしてあなたのmy-ajax-call-page.php 次のようになります:

    <?php
        include("mysql-connection.php");
    
        $sql = mysql_query("SELECT description 
                            FROM products 
                            WHERE product_id='" . mysql_real_escape_string($_POST['pid']) . "'");
        $row = mysql_fetch_assoc($sql);
    
        echo json_encode("description" => $row['description']);
    ?>
    

    jQueryライブラリのWebサイト にjQueryライブラリを使用するための多くの例とドキュメントがあります。



    1. MYSQLでSQLを使用して2つの日時値の間を減算し、結果を分または秒で取得するにはどうすればよいですか?

    2. NodeJS:MySQLでETIMEDOUTエラーが発生することがあります

    3. Dockercomposeを使用してmysqldbを作成するにはどうすればよいですか?

    4. 別のテーブルから1つの値を持つデータMysqlを挿入する