• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

pętla foreach

Object Storage Arubacloud
0 głosów
506 wizyt
pytanie zadane 20 sierpnia 2017 w PHP przez mi-20 Stary wyjadacz (13,190 p.)

Witam, działając na pętli foreach, wstawiając wewnątrz kod html a  przy tym używając wielo liniowej instrukcji echo jak poprawnie dodać zmienną?

Mając kod:

<?php
include ('connect.php');

$tbl = $connect->query('SELECT * FROM `ad`');
foreach ($tbl as $key => $value){
echo<<<END

<div class="col-lg-3">
    <div class="content-ad">
        <div class="photo">
        
        </div>
        <div class="description">
        //tutja chcę wstawić to:
        $value['title']
        </div>
    </div>
</div>

END;
    
}
?>

Robiąc tak jak powyżej otrzymuję błąd, jak powinien wyglądać prawidłowy zapis?

 

2 odpowiedzi

0 głosów
odpowiedź 20 sierpnia 2017 przez Assasz Nałogowiec (30,460 p.)

Błąd otrzymujesz z innego powodu. Zobacz, co takiego zwraca funkcja query. Aby otrzymać tablicę asocjacyjną z danymi potrzebujesz do tego funkcji fetch_assoc.

komentarz 21 sierpnia 2017 przez mi-20 Stary wyjadacz (13,190 p.)
jestem pewien że błąd otrzymuje z powodu dodania zmiennej, znaczy jeśli dodam sama zmienną np. $zmienna wszystko jest dobrze ale jeśli dodam $zmienna['coś'] już przestaje być ok
komentarz 21 sierpnia 2017 przez Assasz Nałogowiec (30,460 p.)
To podaj treść błędu. Próbowałeś może dodać slashe przed apostrofami?
komentarz 21 sierpnia 2017 przez mi-20 Stary wyjadacz (13,190 p.)

Poradziłem sobie tym sposobem:

<?php
include ('connect.php');

$tbl = $connect->query('SELECT * FROM `ad`');
foreach ($tbl as $key => $value){
echo '<div class="col-lg-3">';
        echo '<div class="content-ad">';
            echo '<div class="photo">' . $value['ph1_ad'] . '</div>';
            echo '<div class="description">';
                echo '<div class="title_addf">' . $value['title'] . '</div>';
                echo '<div class="klm">' . '<i class="icon-link-ext"></i> ' . $value['stan_ad'] . '</div>';
                echo '<div class="klm pr">' . $value['price_ad'] . ' zł' . '</div>';
                echo '<div class="dd">' . '<i class="icon-location"></i> ' . $value['loc_ad'] . '</div>';
            echo "</div>";
           
        echo "</div>";
echo "</div>";
}
?>

Niekoniecznie o to mi chodziło pod względem ilości użytych "echo" ale teraz pięknie działa.

0 głosów
odpowiedź 20 sierpnia 2017 przez marcin99b Szeryf (82,180 p.)
może kod z echo wyświetl w " " (nie pomyl z ' ' )
Zmienne dalej będą działać

echo "kod html";
komentarz 21 sierpnia 2017 przez mi-20 Stary wyjadacz (13,190 p.)
Tak, ale teraz sobie wyobraź ile echo musisz wstawić przy bardziej rozbudowanym kodziem. Bardziej optymalnie i przejrzyście wygląda przy zastosowaniu wielo liniowego echo
komentarz 21 sierpnia 2017 przez Assasz Nałogowiec (30,460 p.)

Tylko jedno.

echo "Lorem ipsum dolor sit amet, consectetur 
   adipiscing elit, sed do eiusmod tempor incididunt 
   ut labore et dolore magna aliqua. Ut enim ad minim
   veniam, quis nostrud exercitation ullamco laboris 
   nisi ut aliquip ex ea commodo consequat.";

 

komentarz 21 sierpnia 2017 przez mi-20 Stary wyjadacz (13,190 p.)
Jeśli dodajesz tekst to tak, ale jeśli opierasz konstrukcję na kilku divach no to już niekoniecznie
komentarz 21 sierpnia 2017 przez Assasz Nałogowiec (30,460 p.)
echo '<div class="col-lg-3">
            <div class="content-ad">
               <div class="photo">' . $value['ph1_ad'] . '</div>
               <div class="description">
                  <div class="title_addf">' . $value['title'] . '</div>
                  <div class="klm">' . '<i class="icon-link-ext"></i> ' . $value['stan_ad'] . '</div>
                  <div class="klm pr">' . $value['price_ad'] . ' zł' . '</div>
                  <div class="dd">' . '<i class="icon-location"></i> ' . $value['loc_ad'] . '</div>
                </div>
              </div>
           </div>';

 

komentarz 21 sierpnia 2017 przez mi-20 Stary wyjadacz (13,190 p.)
Dzięki wielki, działa :)

Podobne pytania

+1 głos
1 odpowiedź 536 wizyt
pytanie zadane 1 grudnia 2021 w PHP przez BarSki13 Obywatel (1,250 p.)
0 głosów
2 odpowiedzi 194 wizyt
pytanie zadane 23 marca 2018 w PHP przez gambi Początkujący (350 p.)
0 głosów
0 odpowiedzi 274 wizyt
pytanie zadane 4 lutego 2018 w PHP przez mi-20 Stary wyjadacz (13,190 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...