Kære udviklere,
Nu hvor jeg er igang med at bygge mit eget personlige "cms" til eget brug, er jeg stødt på et problem.
Jeg skal have lavet nogle såkaldte "paneler" på siden, som kommer fra en database.
Jeg har bygget det op i min html, således:
- <body>
- <d:header>
- <?php $functions->get_panels('top');
- ?>
- </d:header>
-
- <d:content>
- <?php $functions->get_panels('content');
- ?>
- </d:content>
-
- <d:footer>
- <?php $functions->get_panels('footer');
- ?>
- </d:footer>
- </body>
I min php ser det således ud
- public function get_panels($type)
- {
- $i = 0;
-
- parent::ExecuteQuery("SELECT panels_title, panels_text FROM dab93_panels WHERE panels_type = '$type'");
- $row = parent::FetchRow();
- $num = parent::NumRows();
-
- if($num > 0)
- {
- $str_from = array("[a", "url=\"", "]", "[/a");
- $str_to = array("<a", "href=\"", ">", "</a");
-
- $row["panels_text"] = str_replace($str_from, $str_to, $row["panels_text"]);
-
- while($i < $num)
- {
- echo( '<section class="panel '.$type.'">' . $row["panels_title"] . " " . $row["panels_text"] ."</section>\n" );
- $i++;
- }
- }
- }
Problemet ligger i at den dublikerer min data, hvis jeg har to "typer" der er ens.
I min tabel har jeg dette:
LinkJeg har med vilje lavet 2 "paneler" som ligger under typen "content". Problemet er at den øverste hvor der står "hello world" under titlen, ved "content", der bliver den udskrevet to gange med samme data istedet for at den tager det nye data og udskriver dette.
Nuværende resultat:
LinkEr der nogle der kan finde fejlen? Jeg kan ikke. På forhånd tak.