PHP, а l oop дублирует один MySQL результат - PullRequest
0 голосов
/ 11 июля 2020

Прошу прощения за название, так как это сложно выразить. Все результаты выглядят отлично, до конца. После 25 элементов самый первый элемент повторяется примерно 20 раз, и, хоть убей, я не могу найти здесь подобных проблем.

Это мой запрос:

$sql = "SELECT DISTINCT NewsID, Link, Title, Thumbnail FROM `scinews` WHERE Subject = '".$articles."' AND Page = ".$page;
$result = $conn->query($sql);
while ($row = mysqli_fetch_row($result)) {                         
    
    echo '<div class="card">'.$row[3].'<p><div class="card-title">'.$row[2].'</p>
        <p><a href="'.$row[1].'"> [Read More]</a></p></div></div>';
}

Если я удалю это эхо и заменю его следующим:

echo '<a href="'.$row[1].'">'.$row[2].'</a><br>';

Проблема больше не существует. Я думал, что проблема связана с MySQL, поэтому я попытался переключиться с mysqli_fetch_asso c на mysqli_fetch_row и даже установить LIMIT для команды mysql. Ни чего не делал. Кажется, это связано с DIV, но я просто догадываюсь об этом. Любая помощь приветствуется.

1 Ответ

0 голосов
/ 12 июля 2020

Мне удалось решить проблему.

В javascript была функция, которая клонировала класс «карты»:

function cloneCards(count) {

  var main = document.querySelector("main");
  var card = document.querySelector(".card");

  for (var i = 0; i < count; i++) {
    main.appendChild(card.cloneNode(true));
  }  
}

Функция была вызвана, когда пользователь прокрутил страницу вниз, и заголовок уменьшился. Таким образом, он дублировал уже созданную карту 25 раз.

CloneCards(25);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...