2015-10-04 79 views
2

我正在使用while循环将数据库中的数据显示到表中。它应该允许用户在用户点击任何行时重定向到其他页面以编辑信息。我正在尝试获取用户点击的行号,并且需要转换为一个php变量。我怎样才能做到这一点?有没有其他的方式来获得行号?这里是我的代码:获取表中的行号并将其保存到php变量

<div id="table-wrapper"> 
    <div id="table-scroll"> 
    <table class="table" border="1" border-spacing="2" padding="2" > 
     <tr class="row"> 
     <td> 
      <font face="Arial, Helvetica, sans-serif">Staff ID</font> 
     </td> 
     <td> 
      <font face="Arial, Helvetica, sans-serif">Name</font> 
     </td> 
     <td> 
      <font face="Arial, Helvetica, sans-serif">Position</font> 
     </td> 
     </tr> 

     <?php 
     $i = 0; 
     while ($i < $num) { 
      $f1 = mysql_result($result, $i, "ID"); 
      $f2 = mysql_result($result, $i, "Name"); 
      $f3 = mysql_result($result, $i, "Position"); 
     ?> 

     <script> 
     function myFunction(x) { 
      alert("Row index is: " + x.rowIndex); 
      //i can get the row number using this 
     } 
     </script> 

     <tr onclick="myFunction(this)"> 
     <td> 
      <font face="Arial, Helvetica, sans-serif"><?php echo $f1; ?></font> 
     </td> 
     <td> 
      <font face="Arial, Helvetica, sans-serif"><?php echo $f2; ?></font> 
     </td> 
     <td> 
      <font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?></font> 
     </td> 
     </tr> 

     <?php 
      $i++; 
     } 
     ?> 
    </table> 
    </div> 
</div> 
+1

你不能“,需要转换到一个PHP变量“。用户操作应该使用javascript进行处理。 –

+0

@DmitriiG。如果使用javascript处理行号可以在$ _SESSION中使用吗?我需要使用AJAX发布请求的另一个php文件 – Nichole

+0

中的行号。 –

回答

0

这将是最好使用一个实际的链接,假设你准备做一个标准的GET请求(如果没有,请扩大它是什么,你有点尝试做):

<td> 
    <a href="path/to/some_script.php?n=<?php echo $i ?>"> 
    <font face="Arial, Helvetica, sans-serif"><?php echo $f1 ?></font> 
    </a> 
</td> 

如果必须使用JavaScript,你也可以存储数量数据,这可能是多一点可靠:

<script> 
    function myFunction(el) { 
     alert(el.dataset.row); 
    } 
</script> 

<tr data-row="<?php echo $i ?>" onclick="myFunction(this)"> 
    <font face="Arial, Helvetica, sans-serif"><?php echo $f1 ?></font> 
</td> 
+0

如何将行号传递给另一个php文件? – Nichole

+0

您需要向您的服务器发出新的请求,例如如第一个例子所示。然后你可以从GET参数中提取数字。 – polarblau

+0

谢谢!有用! – Nichole

相关问题