【问题标题】:Get MySQL ID from loaded table with PHP使用 PHP 从加载的表中获取 MySQL ID
【发布时间】:2016-01-30 21:39:52
【问题描述】:

当我单击它时,我试图从特定表行中获取 ID。我有以下 PHP 代码:

$sql = "SELECT ID, eventName, DATE_FORMAT(date, '%d/%m/%Y'), time, aantal_spelers, current_spelers FROM dutch_delight ORDER BY date, time";
                $result = $conn->query($sql);



                if ($result->num_rows > 0) {
                    while($row = $result->fetch_assoc()) {
                        echo "<tr><td>".$row["DATE_FORMAT(date, '%d/%m/%Y')"]."</td>"."<td>".$row["time"]."</td>"."<td>".$row["eventName"]."</td>"."<td>".$row["aantal_spelers"]."</td>"."<td>".$row["current_spelers"]."</td></tr>";
                    }

                } 

                else {
                    echo "Er zijn nog geen evenementen aangemaakt.";
                }

现在,我想要做的是,当我单击特定表格行时,它会提醒该行的 ID。因此,如果有 30 行并且我单击第 10 行,我需要显示正确的 ID。有没有人知道如何做到这一点?

【问题讨论】:

  • “有人有想法吗?” - 关于什么的想法;如果您的代码失败或如何做到这一点?您还标记为 jQuery,为什么?
  • 关于如何做。此代码正在正确加载所有内容。
  • 您是否尝试过自己先弄清楚?如果是这样并且您的代码失败了,请告诉我们您尝试了什么。
  • 对于这个问题,从数据库中提取数据并不重要;甚至不是您使用 php 创建客户端读取的 html 输出。它只是一个客户端 onClick 处理程序,它基于源对象获取一些其他数据。
  • 另外,在看到您的其他问题stackoverflow.com/q/33417178 时,我们不知道您是否仍在使用 PDO 进行连接/查询。所以,你的问题既“太宽泛”又“不清楚”。

标签: php jquery mysql sql html-table


【解决方案1】:

您可以为此使用 jquery/javascript

if ($result->num_rows > 0) {
                while($row = $result->fetch_assoc()) {
                    echo "<tr onclick=\"alert('".$row['ID']."')\"><td>".$row["DATE_FORMAT(date, '%d/%m/%Y')"]."</td>"."<td>".$row["time"]."</td>"."<td>".$row["eventName"]."</td>"."<td>".$row["aantal_spelers"]."</td>"."<td>".$row["current_spelers"]."</td></tr>";
                }

这里使用TR上的onclick事件来提醒Ids。每行都有自己的ID,只要你点击表格行,就会弹出相应的ID。

【讨论】:

  • 我认为应该是$row["ID"] 而不是time
【解决方案2】:

使用

 echo "<tr onclick=\"alert('".$row['ID']."')\"><td>".$row["DATE_FORMAT(date, '%d/%m/%Y')"]."</td>"."<td>".$row["time"]."</td>"."<td>".$row["eventName"]."</td>"."<td>".$row["aantal_spelers"]."</td>"."<td>".$row["current_spelers"]."</td></tr>";

【讨论】:

    【解决方案3】:

    在您需要为任何行提供 id 时

    echo '<tr id="'.$row['ID'].'"><td>......</td></tr>';
    

    并在您的文件中包含 javascript

    <script>
    var table = document.querySelector('table');
    
    table.addEventListener('click', function(ev){
        var theID = ev.target.id;
        alert(theID);
    })
    </script>
    

    【讨论】:

      猜你喜欢
      • 2011-06-05
      • 1970-01-01
      • 1970-01-01
      • 2012-09-01
      • 1970-01-01
      • 2014-02-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多