如何在sql表中的每一行之后添加一个按钮?

问题描述:

我有一个表有三列日期,标题,消息。如何在sql表中的每一行之后添加一个按钮?

我会在每张表中只显示日期和标题,并且希望在每行之后添加一个单独的按钮,然后我将显示该消息。

我曾尝试

  <?php 

     echo "<table style='border: solid 3px aqua;'>"; 
     echo "<tr><th>Circular/Notice</th><th>DateGenerated</th></tr>"; 
     class TableRows extends RecursiveIteratorIterator { 
      function __construct($it) { 
       parent::__construct($it, self::LEAVES_ONLY); 
      } 
     function current() { 
       return "<td style='width:150px;border:1px solid red;'>" . parent::current(). "</td>"; 
      } 

      function beginChildren() { 
       echo "<tr>"; 
      } 

      function endChildren() { 
       echo "</tr>" . "\n"; 
      } 

     } 

     $servername = "localhost"; 
     $username = "root"; 
     $password = ""; 
     $dbname = "er"; 

     try { 
      $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); 
      $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
      $stmt = $conn->prepare("SELECT title ,DateGenerated FROM messages"); 
      $stmt->execute(); 

      // set the resulting array to associative 
      $result = $stmt->setFetchMode(PDO::FETCH_ASSOC); 
      foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) { 
       echo $v; 


      } 
     } 
     catch(PDOException $e) { 
      echo "Error: " . $e->getMessage(); 
     } 
     $conn = null; 
     echo '<input type ="button" value = "View"/>'; 
     echo "</table>"; 

     ?> 

和我得到的结果是只有一个按钮,太多在桌子上。 enter image description here

+0

我试过了,它显示顶部每行的2个按钮。 – Mann 2015-02-11 15:14:23

+0

在“每个表”中还是在每一行中? – 2015-02-11 15:29:29

+0

EACH ROW后按钮,当任何按钮被点击时,我想显示列消息 – Mann 2015-02-11 15:33:26

<input>需要是<td>,它必须是一个HTML表格,是不是在一排和细胞内的<tr>

任何内部的内部,获取呈现表的外部。

要让每行都有一个按钮,您需要将代码放在TableRows循环中。我建议编辑endChildren()功能,如下:

function endChildren() { 
    echo '<td><input type="button" value = "View"/></td>'; 
    echo "</tr>" . "\n"; 
} 
+0

的数据感谢它的工作,现在为每个按钮点击我需要显示在我的数据库的消息列中的数据。 – Mann 2015-02-11 15:27:32