2017-07-31 115 views
0

我用这example多个选择下拉列表的创建表列标题从下拉的选择值下拉列表

的index.php

<!DOCTYPE html> 
<html> 
<head> 
    <title>Webslesson Tutorial | How to Use Bootstrap Select Plugin with PHP JQuery</title> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" /> 
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/css/bootstrap-select.min.css"> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/js/bootstrap-select.min.js"></script> 

</head> 
<body> 
    <br /><br /> 
    <div class="container"> 
    <br /> 
    <h2 align="center">How to Use Bootstrap Select Plugin with PHP JQuery</h2> 
    <br /> 
    <div class="col-md-4" style="margin-left:200px;"> 
    <form method="post" id="multiple_select_form"> 
    <select name="framework" id="framework" class="form-control selectpicker" data-live-search="true" multiple> 
     <option value="Laravel">Laravel</option> 
     <option value="Symfony">Symfony</option> 
     <option value="Codeigniter">Codeigniter</option> 
     <option value="CakePHP">CakePHP</option> 
     <option value="Zend">Zend</option> 
     <option value="Yii">Yii</option> 
     <option value="Slim">Slim</option> 
    </select> 
    <br /><br /> 
    <input type="hidden" name="hidden_framework" id="hidden_framework" /> 
    <input type="submit" name="submit" class="btn btn-info" value="Submit" /> 
    </form> 
    <br /> 

    </div> 
    </div> 
</body> 
</html> 

<script> 
$(document).ready(function(){ 
$('.selectpicker').selectpicker(); 

$('#framework').change(function(){ 
    $('#hidden_framework').val($('#framework').val()); 
}); 

$('#multiple_select_form').on('submit', function(event){ 
    event.preventDefault(); 
    if($('#framework').val() != '') 
    { 
    var form_data = $(this).serialize(); 
    $.ajax({ 
    url:"insert.php", 
    method:"POST", 
    data:form_data, 
    success:function(data) 
    { 
    //console.log(data); 
    $('#hidden_framework').val(''); 
    $('.selectpicker').selectpicker('val', ''); 
    alert(data); 
    } 
    }) 
    } 
    else 
    { 
    alert("Please select framework"); 
    return false; 
    } 
}); 
}); 
</script> 

它工作正常,但我想调整根据我的需要在页面上提到的代码。我想创建一个动态表列的名字是我从下拉列表中

选择手动创建表,并在这里给列的名称作为我的代码,这样反而

<?php 

ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1); 
error_reporting(E_ALL); 


    $ser="10.90.294.23"; 
    $db="Framework"; 
    $user="test"; 
    $pass="test0"; 
    $query = 'SELECT Laravel, Symfony, Codeigniter, CakePHP FROM Framework.list'; 

    $dbDB = new PDO("odbc:Driver=ODBC Driver 13 for SQL Server;Server=10.90.294.23,1456;Database=Framework;Port=1456", $user, $pass); 

    ?> 
    <!DOCTYPE html> 
    <html> 
      <head> 
       <title>HTML table using Jquery with PHP</title> 
       <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> 
       <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" /> 
       <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 
      </head> 
      <body> 
       <br /> 
       <div class="container" style="width:700px;"> 
        <h3 class="text-center">HTML table using Jquery with PHP</h3><br /> 
        <div class="table-responsive" id="employee_table"> 
         <table class="table table-bordered"> 
           <tr> 
            <th width="10%">Laravel</th> 
            <th width="30%">Symfony</th> 
            <th width="10%">Codeigniter</th> 
            <th width="50%">CakePHP</th> 
           </tr> 
          <?php 
    foreach ($dbDB->query($query) as $row) { 
           ?> 
           <tr> 
            <td><?php echo $row['Laravel']; ?></td> 
            <td><?php echo $row['Symfony']; ?></td> 
            <td><?php echo $row['Codeigniter']; ?></td> 
            <td><?php echo $row['CakePHP']; ?></td> 
           </tr> 
           <?php       
           } 
           ?> 
         </table> 
        </div> 
       </div> 
       <br /> 
      </body> 
    </html> 

我想要的列标题将从选定的值自动创建。 我正在考虑将所选值存储在变量中,例如:Laravel,CakePHP,Yii,Slim然后我根据逗号之间的每个文本创建标题,“

任何人都可以帮忙吗?我尝试过很多方法,但仍然无法实现。谢谢。

+0

全部取决于您如何存储数据以及该$查询变量是什么。 如果您可以向我们显示查询和数据库中的行/列,那么我相信我们可以提供帮助 –

+0

除非您使用相同的示例?如果是这样的话,请将该例添加到问题中,然后再删除该示例。 –

+0

@RichardHousham感谢您的评论我已经添加了我的php文件的所有代码 – JuniorDev

回答

1

如果这与示例相同,那么我会认为您的表格会有一行并用逗号分隔。这真的不是最好的方式,但对于你需要做的例子。

 $row = $dbDB->query($query); 
     $rows = explode(",",$row); 
     ?> 
      <tr> 
    <?php 
     foreach ($rows as $r) { 
          ?> 

           <td><?php echo $r; ?></td> 

          <?php       
          } 
?> 
     </tr> 
+0

非常感谢。非常感谢 – JuniorDev

+0

不用担心,我再次考虑正确的数据库设计。所以你可以为每个元素设置一行。但如果你正在学习和做一个教程,那么我希望这有助于。 –