sql >> Database teknologi >  >> RDS >> Mysql

PHP-databaseoutput viser ikke den rigtige vej

Først og fremmest:Da du vil hente flere emner fra databasen, skal du fjerne LIMIT 1 fra forespørgslen og if($j >= 1) continue; i foreach loop, da de begge begrænser dit output til kun 1 emne.

I din foreach loop for $toppics (korrekt stavning:emner;P) du ekko i øjeblikket kun et anker-tag (link), men det du ønsker er (for at bruge dine ord her) en 'blok'. Uanset hvad du vil have, at den blok skal se ud, er stedet for at definere det inden for den fore hver sløjfe.

Nu ved jeg ikke hvilke elementer, klasser eller stylinger du bruger/vil bruge, så jeg vil lave et eksempel på en blok der består af en titel og derunder linket:

//rename $topic keys to the names of your DB columns
foreach($toppics as $topic){
    echo '<div>';
    echo '<h3>'.$topic['title'].'</h3><br>'; 
    echo '<a href="#section'.$topic['id'].'">'.$topic['link_text'].'</a>';
    echo '</div><br>';
}

Jeg ved, at min løsning ikke vil ligne dit givne billede, men den burde få pointen på tværs af, hvordan og hvor du kan bygge dine blokke.

Jeg synes, dette problem burde have været let at løse, når du kender det grundlæggende i HTML, så jeg vil virkelig anbefale dig at lære lidt mere om HTML, før du arbejder på store projekter.

Rediger efter at spørgsmålet blev redigeret:
Som jeg nævnte i mit svar, vil my solution will not look exactly like your given image fordi I don't know what elements, classes or stylings you use . Dit tilbageværende problem er nu brugen af ​​de korrekte html-tags, klasser og stylings.

Det ser ud til, at det overordnede element i de genererede div'er er stylet, som du ønsker, at de enkelte blokke skal se ud.
Så det, du kunne gøre, er at fjerne det overordnede element og bruge det som en erstatning for den genererede div. :

<div class="col-md-6">
         <div class="well dash-box">
           <h2><span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span> Stel jezelf voor</h2>
           <h5><a href="https://tom.lbmedia.nl/onderwerp"> Laat wetn wie jij en je business zijn</a></h5>
   </div>
   </div>
  <div class="col-md-6">
  <!--<div class="well dash-box">-->
  <h2><span class="glyphicon glyphicon-list-alt" aria-hidden="true"></span> 12</h2>
  <?php
  $toppics = $app->get_topics();
  $i = 0;
  foreach($toppics as $topic){
      echo '<div class="well dash-box">';
      echo '<h3>'.$topic['onderwerp'].'</h3><br>'; 
      echo '<a href="#section' . $i++ . '">'  .$topic['omschrijving'].'</a>';
      echo '</div><br>';
  }
  ?>
  <!--</div>-->
  </div>

sidenote :Jeg er ikke enig i din opbygning af din href-attribut #section1. Når du bygger disse sektioner, skal du kende det nøjagtige indeks fra den tidligere foreach-loop. Brug i stedet en egenskab fra selve emnet, måske dets ID, titel eller beskrivelse (som jeg gjorde i den første kodeblok). På denne måde, når du bygger sektionerne, kan du nemt vide, hvordan du indstiller elementernes id-attribut.




  1. JPA + Hibernate:Sådan defineres en begrænsning med ON SLET CASCADE

  2. SQL-rækkefølge som nummer

  3. Sjovt med Djangos nye Postgres-funktioner

  4. Errcode 13 , SELECT INTO OUTFILE problem