2016-12-15 112 views
-1

好吧,这将是一个长期的问题,请耐心等待。从PHP和MySQL生成手风琴

我想它来创建内容的手风琴:

How I want the image to look like

How it looks right now

我有一个Web应用程序,在这里我上传图片的不同类型(博客,主页)每星期。第一周是第一轮,图像可以标记为1.x.x,其中1是与本周对应的数字。同样,对于为2.xx,3.xx系列等

使用PHP我将这些图像到服务器并登录进入数据库,与像PROJECT_NAME,FILE_NAME,网址,版本等

信息我想要做的是自动生成多个手风琴选项卡。第一个选项卡应该是最近一周上传的一轮。低于此前一周,并且像智者一样到达第1轮(见附图)。

现在我可以在一轮中从所有回合中提取数据和显示文件。我想要做的是单独的轮次,自动根据版本号。= >> 1.x.x文件在第1轮,2.x.x在第2轮等

以下是我写的代码。评论部分是我一直关注和做的。我是PHP的全新角色,如果有人能帮助我,我会很感激。谢谢!

$project_name_download_form = $_GET['project_name']; 
$file_name_download_form = $_GET['file_name']; 
$version_download_form  = $_GET['version']; 
$download_data    = "SELECT * 
           FROM projects, files 
           WHERE project_id = projects.id 
            AND project_name = '$project_name_download_form'  
           AND file_name = '$file_name_download_form' 
           AND version = '$version_download_form'"; 
mysqli_select_db($conn, $GLOBALS['database']); 
$return_data = mysqli_query($conn, $download_data); 
if (!$return_data) { 
    die('Could not get what you wanted: ' . mysqli_error($conn)); 
} 
while ($row = mysqli_fetch_array($return_data)) { 
    $url   = $row['url']; 
    $project_folder = $row['project_folder']; 
    //$id = 18; 
    $file_name  = $row['file_name']; 
    $version  = $row['version']; 
    $details  = $row['details']; 
    $file   = $row['file']; 
    $new   = basename($row['file']); // GET FILE NAME ONLY, GET RID OF PATH. 

    // $design->url = $row[file_name] 
    // $design->version = $row[version] 

    // $designs.push ($design) 
} 


mysqli_free_result($return_data); 


// $lastRound = 0; 

// for each $design in $designs 
// { 
// $round = $design.version.split('.')[0]; 

// if $round <> $lastRound { 

?> 
     <div class="col-sm-2" id = "accordianSet"> 
      <div class="panel-group" id="accordion"> 
       <div class="panel panel-default"> 
        <div class="panel-heading"> 
         <h4 class="panel-title"> 
          <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne"><span> 
          </span>Explore</a> 
         </h4> 
        </div> 
        <div id="collapseOne" class="panel-collapse collapse"> 
         <div class="panel-body"> 
          <?php 
    } 
?> 

<?php 

    // <HTML FOR LINK > 

} 


echo "<table class = 'table'>"; 
echo "<tr>"; 
echo " <th>File Name</th> 
          <th>File Link</th>"; 
echo "</tr>"; 

回答

0

你想要做的就是通过拉动每个星期和循环的结果,但每次循环要在HTML打印变量,例如如下:

<?php 
    $i=0 
    while ($row = mysqli_fetch_array($return_data)) { 
    $url   = $row['url']; 
    $project_folder = $row['project_folder']; 
    //$id = 18; 
    $file_name  = $row['file_name']; 
    $version  = $row['version']; 
    $details  = $row['details']; 
    $file   = $row['file']; 
    $new   = basename($row['file']); 
    $i++ 

//1st Round 
echo' <table> 
    <caption> Round $i</caption> 
    <tr> 
     <th>File Name</th> 
     <td>$file_name</td> 
    </tr> 
    <tr>.... 
    </tr> 
    </table>'; 
}//while loop close tag 

请注意,您可以格式化无论如何你想要的数据,但你必须吐出的HTML,你循环通过MySQL的结果。希望这可以帮助。