sql >> Databasteknik >  >> RDS >> Mysql

PHP-databasutdata visar inte på rätt sätt

Först och främst:Eftersom du vill hämta flera ämnen från databasen måste du ta bort LIMIT 1 från frågan och if($j >= 1) continue; i foreach loop, eftersom de båda begränsar din produktion till endast ett ämne.

I din foreach loop för $toppics (korrekt stavning:ämnen;P) du ekar för närvarande bara en ankartagg (länk), men vad du vill är (för att använda dina ord här) ett 'block'. Oavsett vad du vill att blocket ska se ut, är platsen för att definiera det inom den för varje loop.

Nu vet jag inte vilka element, klasser eller stylingar du använder/vill använda, så jag ska göra ett exempel på ett block som består av en titel och därunder länken:

//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>';
}

Jag vet att min lösning inte kommer att se exakt ut som din givna bild, men den borde få fram poängen hur och var du kan bygga dina block.

Jag tycker att det här problemet borde ha varit lätt att lösa när du kan grunderna i HTML, så jag skulle verkligen rekommendera dig att lära dig lite mer om HTML innan du arbetar med stora projekt.

Redigera efter att frågan redigerats:
Som jag nämnde i mitt svar, my solution will not look exactly like your given image eftersom I don't know what elements, classes or stylings you use . Ditt återstående problem är nu användningen av rätt html-taggar, klasser och stilar.

Det verkar som att det överordnade elementet för de genererade diverna är formaterat som du vill att de enskilda blocken ska se ut.
Så vad du kan göra är att ta bort det överordnade elementet och använda det som en ersättning för den genererade div, som så :

<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>

sidenot :Jag håller inte med om din uppbyggnad av ditt href-attribut #section1. När du bygger dessa sektioner måste du känna till det exakta indexet från den tidigare foreach-loopen. Använd istället något attribut från själva ämnet, kanske dess ID, titel eller beskrivning (som jag gjorde i det första kodblocket). På så sätt när du bygger sektionerna kan du enkelt veta hur du ställer in elementets id-attribut.




  1. Räkna antalet rader i 30 dagars papperskorgar

  2. Hur man skapar ett formulär med formulärguiden

  3. bulk infoga listvärden med SQLAlchemy Core

  4. Rails Console hittar användare efter en mängd ID