Drupal SQL表如何在每一行上插入编辑按钮

时间:2016-07-28 00:54:54

标签: php mysql sql drupal

我在Drupal中有一张表,其中包含以下代码:

$db = mysql_connect("localhost", "root", "moocow");
mysql_select_db("vedb", $db); 
$result = mysql_query("SELECT NodeID,NodeDesc,NodeZone,Fusion,DSLID FROM      `nodeidtable` WHERE DSLID != '' AND `NodeZone` = 'CLOSED' ORDER BY NodeID ASC"); 
$num_rows = mysql_num_rows($result);
echo "<table>"; 
echo "<tr>"; 
echo "<th>CLOSED SITES</th>"; 
echo "<th></th>"; 
echo "<th></th>"; 
echo "<th></th>"; 
echo "<th></th>"; 
echo "</tr>"; 
echo "<tr>"; 
echo "<th>Node ID</th>"; 
echo "<th>Node Address</th>"; 
echo "<th>Node Zone</th>"; 
echo "<th>Fusion Status</th>"; 
echo "<th>Service Number</th>"; 
echo "</tr>"; 
//display the data 
while ($rows = mysql_fetch_array($result,MYSQL_ASSOC)) 
{ 
  echo "<tr>"; 
  foreach ($rows as $data) 
  { 
    echo "<td align='center'>". $data . "</td>"; 
  } 
} 

echo "<br>";
echo "<tr>"; 


echo "</table>"; 

mysql_free_result($result);
mysql_close($db);
?>

现在我可以更改它渲染td以包含各个列,但我真的想在右侧添加一个小编辑按钮,这将允许我编辑特定的行字段。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

使用以下代码替换while循环:

 while ($rows = mysql_fetch_array($result,MYSQL_ASSOC)) 
 { 
    echo "<tr>"; 
    foreach ($rows as $data) 
    { 
       echo "<td align='center'>". $data . "</td>"; 
    }


   //create link for current node edit
    echo "<td align='center'>". l(t('Edit this node'), 'node/' . $row['NodeId'] . '/edit') ."</td>";
    echo "</tr>"; 
 } 

将以下echo "<br>"; and echo "<tr>";移至while循环。这将为您解决问题