如果值在 PHP 中相同,则行跨表

2023-05-06php开发问题
2

本文介绍了如果值在 PHP 中相同,则行跨表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

限时送ChatGPT账号..
<?php
        $id=$_POST['itinerary_id'];
        $query=mysql_query("select * from tblitinerarydetails where tblid='$id' order by date_of_travel asc");
        $i = 0;
        $prevValue = NULL;
        while($rows=mysql_fetch_array($query)){
            $date=$rows['date_of_travel'];
            $mydate = strtotime($date);
            $newdate = date('F j, Y', $mydate);
            $activities=$rows['activities'];
            $time_departure=$rows['time_departure'];
            $time_arrival=$rows['time_arrival'];
            $new_time_departure = date('g:i A', strtotime( $time_departure));
            $new_time_arrival = date('g:i A', strtotime( $time_arrival));
            $means_of_transportation= $rows['means_of_transportation'];
            $travelling_allowance = number_format($rows['travelling_allowance'],2);
            $destination = $rows['destination'];    
            $i++;
            echo "<tr>";
            if ($newdate == $prevValue) {
                echo "<td align='left' rowspan='$i'>$prevValue</td>";
             }
            $prevValue = $newdate;

            echo "<td align='left'>$destination</td>";
            echo "<td align='center'>$new_time_departure</td>";
            echo "<td align='center'>$new_time_arrival</td>";
            echo "<td align='center'>$activities</td>";
            echo "<td align='center'>$means_of_transportation</td>";
            echo "<td align='right'>$travelling_allowance</td>";
            echo "</tr>";
        }
?>

如果值相同,我只想在我的表中添加行跨度.让我们这样说:

I just want to add rowspan in my table if the values are the same. Let's say like this:

我希望 2 月 4 日的所有日期都是分组的,并且只会出现一次(rowspan).

I wanted all the dates with February 4 will be group and will occur once only (rowspan).

推荐答案

Try with jQuery - 

<table border=1 id="myTable">
    <tr>
        <td>A</td>
        <td>1</td>
    </tr>
    <tr>
        <td>A</td>
        <td>2</td>
    </tr>
    <tr>
        <td>b</td>
        <td>1</td>
    </tr>
    <tr>
        <td>c</td>
        <td>1</td>
    </tr>  
    <tr>
        <td>c</td>
        <td>1</td>
    </tr>
</table>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
    $(document).ready(function() {
       var span = 1;
       var prevTD = "";
       var prevTDVal = "";
       $("#myTable tr td:first-child").each(function() { //for each first td in every tr
          var $this = $(this);
          if ($this.text() == prevTDVal) { // check value of previous td text
             span++;
             if (prevTD != "") {
                prevTD.attr("rowspan", span); // add attribute to previous td
                $this.remove(); // remove current td
             }
          } else {
             prevTD     = $this; // store current td 
             prevTDVal  = $this.text();
             span       = 1;
          }
       });
    });
</script>

输出:

这篇关于如果值在 PHP 中相同,则行跨表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

PHP实现DeepL翻译API调用
DeepL的翻译效果还是很强大的,如果我们要用php实现DeepL翻译调用,该怎么办呢?以下是代码示例,希望能够帮到需要的朋友。 在这里需要注意,这个DeepL的账户和api申请比较难,不支持中国大陆申请,需要拥有香港或者海外信用卡才行,没账号的话,目前某宝可以...
2025-08-20 php开发问题
168

PHP通过phpspreadsheet导入Excel日期数据处理方法
PHP通过phpspreadsheet导入Excel日期,导入系统后,全部变为了4开头的几位数字,这是为什么呢?原因很简单,将Excel的时间设置问文本,我们就能看到该日期本来的数值,上图对应的数值为: 要怎么解决呢?进行数据转换就行,这里可以封装方法,或者用第三方的...
2024-10-23 php开发问题
287

mediatemple - 无法使用 codeigniter 发送电子邮件
mediatemple - can#39;t send email using codeigniter(mediatemple - 无法使用 codeigniter 发送电子邮件)...
2024-08-23 php开发问题
11

Laravel Gmail 配置错误
Laravel Gmail Configuration Error(Laravel Gmail 配置错误)...
2024-08-23 php开发问题
16

将 PHPMailer 用于 SMTP 的问题
Problem with using PHPMailer for SMTP(将 PHPMailer 用于 SMTP 的问题)...
2024-08-23 php开发问题
4

关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题
Issue on how to setup SMTP using PHPMailer in GoDaddy server(关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题)...
2024-08-23 php开发问题
17