Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Подсчет строк ячейки в таблице html

Ответить
Настройки темы
Подсчет строк ячейки в таблице html

Аватара для ivan.vas

Новый участник


Сообщения: 27
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день.
Подскажите, вообще реально ли на php сделать такую вещь. Необходимо посчитать сколько значений в ячейке. Есть 8 столбцов, последний столбец при выводе строки переходит на другую строку и выводит еще результат если такой есть.
Пример части таблицы такой:
HTML код: Выделить весь код
<tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> <td>5</td> <td>6</td> <td>7</td> <td> NOTE - 1 <br>NOTE - 2 <br>NOTE - 3 <br>NOTE - 4 <br>NOTE - 5 <br>NOTE - 6 <br>NOTE - 7 </td> </tr>

Как посчитать количество NOTE - Х ?

Если считать количество br, то не получится ли так, что я посчитаю br на всей странице?

Отправлено: 14:42, 11-10-2021

 

Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


DOMXpath'ом можно
Код: Выделить весь код
$doc = new \DOMDocument();
$doc->loadHTML(<<<'STR'
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td>6</td>
<td>7</td>
<td>
NOTE - 1
<br>NOTE - 2
<br>NOTE - 3
<br>NOTE - 4
<br>NOTE - 5
<br>NOTE - 6
<br>NOTE - 7
</td>
</tr>
STR
);
$xpath = new \DOMXpath($doc);
$elements = $xpath->query('//tr/td[8]/br');
var_dump($elements->length);//кол-во тегов br

Последний раз редактировалось Sham, 12-10-2021 в 00:59.

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:26, 11-10-2021 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для ivan.vas

Новый участник


Сообщения: 27
Благодарности: 0

Профиль | Отправить PM | Цитировать


Sham, подскажите, а как быть, когда вывод в таблице будет:
HTML код: Выделить весь код
<tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> <td>5</td> <td>6</td> <td>7</td> <td>NOTE - 1</td> </tr>

Имеется ввиду будет отсутствовать тег <br>

Отправлено: 13:01, 12-10-2021 | #3


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


Надо структуру документа знать и как образуются эти NOTE. Если считается количество ячеек td, то это можно и в xpath посчитать, а не использовать regexp'ы.

Отправлено: 17:13, 12-10-2021 | #4


Аватара для ivan.vas

Новый участник


Сообщения: 27
Благодарности: 0

Профиль | Отправить PM | Цитировать


Sham, значения берутся из базы.
PHP код: Выделить весь код

<?php

        
require_once("db.php");
        
$conn mysqli_connect($server$username$password$database);
        if (
$conn === false) {
                die(
"Ошибка: " mysqli_connect_error());
                }
                
$sql "SELECT * FROM $db_table ORDER BY $db_table.User DESC";
                if(
$result $conn->query($sql)){
                        
$rowsCount $result->num_rows;
                        echo 
"$rowsCount";
                }
        
?>

после выводятся в html:
Код: Выделить весь код
<table class="table table-striped">
  <thead>
    <tr>
                <th scope="col">1</th>
                <th scope="col">2</th>
                <th scope="col">3</th>
                <th scope="col">4</th>
                <th scope="col">5</th>
                <th scope="col">6</th>
                <th scope="col">7</th>
                <th scope="col">8</th>
    </tr>
  </thead>
  <tbody>
        <?php foreach($result as $row){ ?>
    <tr>
      <td><?php echo $row["1"] ?></td>
      <td><?php echo $row["2"] ?></td>
      <td><?php echo $row["3"] ?></td>
      <td><?php echo $row["4"] ?></td>
      <td><?php echo $row["5"] ?></td>
      <td><?php echo $row["6"] ?></td>
      <td><?php echo $row["7"] ?></td>
          <?php $row["8"] = str_replace(PHP_EOL, '<br>', $row["8"]); ?>
      <td><?php echo $row["8"] ?></td>
    </tr>
        <?php } ?>
  </tbody>
 
</table>
В зависимости от количества строк в 8 столбце, происходит переход на новую строку.

Отправлено: 17:31, 12-10-2021 | #5


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


В таблице 8 колонок и неограниченное количество строк. 8-ая ячейка в каждой строке содержит этот список, который уже лежит в базе. Считать нужно все NOTE по всей 8 колонке? Проще наверное узнать, как формируется этот список и сделать отдельный запрос в базу. PHP_EOL - системо-зависимая константа, а должен заменяться конкретный знак переноса, который в базе.
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:51, 12-10-2021 | #6



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Подсчет строк ячейки в таблице html

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Высота строк/ячеек в таблице God-of-Chaos Вебмастеру 1 02-12-2019 13:21
VBS/WSH/JS - JS, jquery скрытие и отображение строк в таблице в HTML коде God-of-Chaos Скриптовые языки администрирования Windows 0 17-07-2019 06:28
.NET - Подсчет строк в таблице БД на С# Sergei_alfimtsev Программирование и базы данных 1 24-06-2017 00:32
MySQL - UPDATE нескольких строк в таблице koresaram Программирование и базы данных 0 30-01-2013 15:03
Про ячейки в таблице Rustemal Вебмастеру 2 16-07-2003 18:01




 
Переход