2016-07-31 61 views
-1

我做了一个PHP文件,查询来自mysql数据库的数据并将结果放入html表格。数据库上的一个字段包含指向文件的链接。一个或多个,用逗号分隔。 一切都很好。 (在SQL查询中使用:GROUP_CONCAT(CONCAT(filename))。 现在很棘手的部分。我试图使用Bootstrap Modals。 我的主要目标是 - 当我点击按钮时,我会得到一个带有链接的小弹出窗口 但是我只有一个链接。第一个结果表中的 当我TABEL莫名其妙排序 - 同样的事情发生 下面是从表输出的小,我现在所拥有的:在弹出的PHP中的HTML表格

8 Company 1  Address 12-11/12, City 2017-04-16 12/022 Link  
9 Company 2  P. Address 19-M1,City 2020-03-31 15/039 Link  
10 Company 3  Address 1,City 2017-04-05 12/015 Link,Link,Link,Link 

所以,我们的目标是:按钮,当我点击它弹出将出现与它的链接。 任何提示如何实现呢? 也许通过id或类似的东西查询?

+0

我想创建一个PHP函数以检索列表的id链接(或者它应该是什么),并在显示模型时通过ajax调用id(该按钮被点击的项目)来调用该函数。 – Paul

+0

这可能对你有趣:http://stackoverflow.com/questions/18378720/bootstrap-3-with-remote-modal – Paul

回答

-1

也许是这样的?

if(isset($_POST['button'])) { 
    $result = mysqli_query($conn,"SELECT * FROM table WHERE address='.$address' "); 
    echo "<table>"; 
    while($row = mysqli_fetch_array($result)) 
    { 
    echo "<tr>"; 
    echo '<td> <a href="' . $row['link1'] . '">Link1</a> </td>'; 
    echo '<td> <a href="' . $row['link2'] . '">Link2</a> </td>'; 
    echo '<td> <a href="' . $row['link3'] . '">Link3</a> </td>'; 
    echo "</tr>"; 
    } 
    echo "</table>"; 
} 

如果你不知道你需要多少链接呼应,你需要一个第二环

+0

'。$ address'看起来像一个错字。 '$ address'未定义,并且打开OP到SQL注入。 – chris85

1

工作测试

<?php 
$arr = [ 
    ["Company 1", "Address 1,City", "2017-04-05", "12/015", "Link"], 
    ["Company 3", "Address 1,City", "2017-04-05", "12/015", "Link,Link,Link,Link"] 
]; 
?> 
<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge"> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
<title>Example of Bootstrap 3 Modals</title> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous"> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 
    $(".btn").click(function(){ 
     $("#myModal").modal('show'); 
    }); 
}); 
</script> 
<style type="text/css"> 
    .bs-example{ 
     margin: 20px; 
    } 
</style> 
</head> 
<body> 
<div class="bs-example"> 
    <!-- Button HTML (to Trigger Modal) --> 
    <a href="#" class="btn btn-lg btn-primary">Launch Demo Modal</a> 

    <!-- Modal HTML --> 
    <div id="myModal" class="modal fade"> 
     <div class="modal-dialog"> 
      <div class="modal-content"> 

       <table> 
        <tr> 
        <th>name</th> 
        <th>address</th> 
        <th>date</th> 
        <th>data</th> 
        <th>links</th> 
        </tr> 
        <tr> 
         <?php foreach ($arr as $value): ?> 
         <tr> 
          <td><?= $value[0]; ?></td> 
          <td><?= $value[1]; ?></td> 
          <td><?= $value[2]; ?></td> 
          <td><?= $value[3]; ?></td> 
         <td> 
         <?php if (strpos($value[4], ',') == false AND ! empty($value[4])): ?> 
          <a href="<?= $value[4]; ?>">link name</a> 
         <?php else: ?> 
          <?php $links = explode(',', $value[4]); ?> 
          <?php foreach ($links as $link): ?> 
          <a href="<?= $link; ?>">link name</a> 
          <?php endforeach; ?> 
         <?php endif; ?> 
         </td> 
         </tr> 
         <?php endforeach; ?> 
       </table> 
       <table> 

       </table> 
      </div> 
     </div> 
    </div> 
</div> 
</body> 
</html>          
+0

我会尽量根据需要修改和使用它。谢谢。 – Jaur