1

複数のドロップダウン ボックスがあり、選択した値を mysql データベースに保存しようとしています。ドロップダウン ボックスの数は、ユーザーが決定します。表示する必要な数のドロップダウンを生成する jquery 関数があります。前述のように、各ドロップダウンで選択した値を保存しようとしています。それぞれに独自の行と一意の ID があります。私が持っているクエリは、何も保存していません。サイト

ドロップダウンの数を生成する Jquery

<script>
    $(document).ready(function () {

    $('select').change(function() {
    var option = $(this).val();
    showFields(option);
    return false;
        });


        function showFields(option){ 

            var content = '';
            for (var i = 1; i <= option; i++){
                content += '<div id="course_'+i+'"><label>Course # '+i+'</label><br /><label>Course Name:</label> <select id="coursename_'+i+'" name="coursename_'+i+'"><option value="">--- Select ---</option>"'
                        <?php


                           $mysqli = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
                           if (mysqli_connect_errno()) {
                                printf("Connect failed: %s\n", mysqli_connect_error());
                                exit();
                            } 
                            $course_query = "SELECT course_id, course_name FROM courses ";
                                    if($result = mysqli_query($mysqli, $course_query)) {
                                        while ($idresult = mysqli_fetch_row($result))
                                        {
                                            //dropdown values pulled from database
                                            $course_id = $idresult[0];
                                            $course_name = $idresult[1];
                                            echo 'content += \'<option value="' . $course_id . '">' . $course_name . '</option>\';';
                                        }
                                    }
                        ?>
                '"';                   

                content += '</select><br /><div><br />';

            }
            $('#course_catalog').html(content);

        }
    });
</script>

PHP 挿入

<?php
if(isset($_POST['submit'])){

        $coursename = $_POST["coursename"];
        $courseid = $_POST["courseid"];

        $db_con = new mysqli(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
        $db_insert4 = "INSERT INTO courses_bridge (course_name, course_id) VALUES ('$coursename', '$courseid')";
        mysqli_query($db_con, $db_insert4);

}

?>

HTML

<form action="index.php" method="post">
    Courses being offered?
        <select>
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
            <option value="4">4</option>
            <option value="5">5</option>
        </select>

    <div id="course_catalog"></div>

    </br>
    <input value="SAVE" type="submit">
</form>
4

4 に答える 4

1

これはうまくいくはずです。

HTML:

    <form action="" method="post">
    Courses being offered?
     <select name="coursesOffered">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
       </select>

  <div id="course_catalog"></div>

  </br>
  <input value="SAVE" type="submit" name="submit">
</form>

JS:

   <script>
   $(document).ready(function () {

   $('select').change(function() {
var option = $(this).val();
showFields(option);
return false;
    });


    function showFields(option){ 

        var content = '';
        for (var i = 1; i <= option; i++){
            content += '<div id="course_'+i+'"><label>Course # '+i+'</label><br /><label>Course Name:</label> <select id="coursename_'+i+'" name="coursename_'+i+'"><option value="">--- Select ---</option>"'
                    <?php


                       $mysqli = new mysqli('localhost', 'root', '123456', 'test');
                       if (mysqli_connect_errno()) {
                            printf("Connect failed: %s\n", mysqli_connect_error());
                            exit();
                        } 
                        $course_query = "SELECT id, tags FROM tags ";
                                if($result = mysqli_query($mysqli, $course_query)) {
                                    while ($idresult = mysqli_fetch_row($result))
                                    {
                                        //dropdown values pulled from database
                                        $course_id = $idresult[0];
                                        $course_name = $idresult[1];
                                        echo 'content += \'<option value="' . $course_id . ':'.$course_name.'">' . $course_name . '</option>\';';
                                    }
                                }
                    ?>
            '"';                   

            content += '</select><br /><div><br />';

        }
        $('#course_catalog').html(content);

    }
});
 </script>

PHP:

   <?php
if(isset($_POST['submit'])){
$coursesOffered=$_POST['coursesOffered'];
$db_con = new mysqli(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
    for($i=1;$i<=$coursesOffered;$i++)
    {
    $courseVals=explode(':',$_POST["coursename_".$i]);

    $db_insert4 = "INSERT INTO courses_bridge (course_name, course_id) VALUES ('".$courseVals[1]."', '".$courseVals[0]."')";
    mysqli_query($db_con, $db_insert4);
    }     
}

 ?>
于 2013-11-12T05:52:38.737 に答える
-1
<?php                                       
$pid=$row['pid'];
//echo $pid;die;
{
?>                        
    <form name="my_form" id="my_form" method="POST">                                            
    <label>Pid</label>
    <select  id="pid" name="Pid">
    <option value="1" <?php if($pid==1) { ?> selected="selected" <?php } ?>> Factory</option>
    <option value="2" <?php if($pid==2) { ?> selected="selected" <?php } ?> >Plant</option>
    <option value="3" <?php if($pid==3) { ?> selected="selected" <?php } ?> >Sugar Firm</option>
    <option value="4" <?php if($pid==4) { ?> selected="selected" <?php } ?> >Warehouse</option>
    <option value="5" <?php if($pid==5) { ?> selected="selected" <?php } ?> >Machinery</option>
    </select>
于 2015-03-03T06:20:26.417 に答える