Jak zrobić, aby usuwało puste divy?

0

Witam,
Jak mogę zrobić, aby skrypt PHP usuwał puste divy?

0

Podaj może trochę więcej informacji...

Może coś takiego:

str_replace('<div></div>', '', $text);
1

@Gouda105: Czym są według Ciebie puste divy? Kontenerami bez jakiejkolwiek treści? Kontenerami bez widocznej treści (np. biały tekst na białym tle)?

Dodatkowo zdaje się, że mamy do czynienia z problemem X/Y - co próbujesz osiągnąć?

0
$nazwyproduktow = $_SESSION['nazwyproduktow'];
		$tablicaProduktow = explode(",", $nazwyproduktow);
		$zakodowaneProdukty = serialize($tablicaProduktow);
		$_SESSION['zakodowaneProdukty'] = $zakodowaneProdukty;

I jak wstawiam to do divów -

<div class="produkt"><?php echo $odkodowana[0]; ?></div>
	<div class="produkt"><?php echo $odkodowana[1]; ?></div>
	<div class="produkt"><?php echo $odkodowana[2]; ?></div>
	<div class="produkt"><?php echo $odkodowana[3]; ?></div>
	<div class="produkt"><?php echo $odkodowana[4]; ?></div>
	<div class="produkt"><?php echo $odkodowana[5]; ?></div>
	<div class="produkt"><?php echo $odkodowana[6]; ?></div>
	<div class="produkt"><?php echo $odkodowana[7]; ?></div>
	<div class="produkt"><?php echo $odkodowana[8]; ?></div>
	<div class="produkt"><?php echo $odkodowana[9]; ?></div>

to nie zapełnia każdego, tylko losowo, więc chcę pousuwać te, które są puste.

1

Whoa - czyli dobrze myślałem: mamy do czynienia z problemem X/Y ;-)

Zamiast usuwać puste divy, może po prostu nie generuj żadnych pustych elementów?

foreach ($odkodowana as $odkodowanyProdukt) {
  echo '<div class="product">' . $odkodowanyProdukt . '</div>';
}
0

Komentarze zaczęły się trochę rozrastać - wróćmy do postów:

Zrobiłem z nich tablicę dałem ramkę, i patrzę, że pomiędzy nimi są puste wiersze (tr). Jak temu zapobiec?

Pokaż kod.

0
<?php 
	foreach ($odkodowana as $odkodowanyProdukt) 
	{
		echo '
		<tr class="wiersz">
			<td class="rekord">' . $odkodowanyProdukt . '</td>
		</tr>';
	}
	?>

A tu kod na $odkodowana:

$nazwyproduktow = $_SESSION['nazwyproduktow'];
		$tablicaProduktow = explode(",", $nazwyproduktow);
		$zakodowaneProdukty = serialize($tablicaProduktow);
		$_SESSION['zakodowaneProdukty'] = $zakodowaneProdukty;

nazwyproduktow to zmienna na wzór czegoś takiego: ciag1,ciag2. Chyba Pan pomagał mi ją robić.

0

Mógłbyś pokazać, co zwróci Ci var_dump($odkodowana)?

0
foreach ($odkodowana as $odkodowanyProdukt) {
  if (mb_strlen($odkodowanyProdukt) === 0) {
    continue;
  }

  echo '
        <tr class="wiersz">
            <td class="rekord">' . $odkodowanyProdukt . '</td>
        </tr>';
    }

Przy czym nasuwa się pytanie: dlaczego w ogóle masz tam jakieś puste wiersze? Skąd one się biorą?

1 użytkowników online, w tym zalogowanych: 0, gości: 1