---
title: "Problem med loop"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/145626-problem-med-loop"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "dahlgren"
published: "2006-04-16T19:22:03.000Z"
updated: "2006-04-16T20:40:57.000Z"
replies: 3
views: 433
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/145626-problem-med-loop"
---

# Problem med loop

## #1 — dahlgren, 2006-04-16T19:22Z

Hej

Ber om ursäkt för att det är ganksa mycket kod men jag kan inte riktigt hitta ver felet är. Koden i sig fungerar men inte riktigt som jag vill så jag vet inte riktigt vart jag ska leta. Felet yttrar sig genom att datumet en nyhet är skapad inte hamnar under nygheten om det är två eller fler nyheter med bilderi inslagda. Lite svårt att för klara men titta [här](http://test.djursholmsscoutkar.se) så syns felet tydligt. Skulle bli jätteglad om någon har möjlighet att hjälpa mig. 

```php
      echo "<br><p class=\"date\">".$r['createdate'].", ".$r['fullname'];
```

 
Raden ovan är den raden som skriver ut informationen som hamnar fel.

```php
 <?PHP
function shortString($string, $num) {
return trim(preg_replace ("/([^\s]+)$/", "", substr ($string, 0, $num)));
}
  
if(empty($_GET['id'])) {
$curdate = date("Ymd");
$sql1 = "SELECT News.id AS id, News.headline AS headline, News.content, " .
                        "DATE_FORMAT(News.createdate, '%Y-%m-%d') AS createdate, " .
                        "News.stopdate AS stopdate, User.fullname AS fullname, " .
                        "News.picture_id as pic_id " .
                "FROM News, User " .
                "WHERE $curdate >= " . 'startdate' .
                        " AND " . $curdate . " <= " . 'stopdate' .
                        " AND News.author_username = User.username ".
                "ORDER BY startdate DESC";
        $strQuery = mysql_query($sql1) or die(mysql_error());
  
        echo "<table border=\"0\">";
        while ($r = mysql_fetch_array($strQuery)) {
          if(!empty($r['pic_id'])) {
            $sql2 = "SELECT Files.id, Files.filename, Files.type " .
                    "FROM News, Files " .
                    "WHERE Files.id = News.picture_id AND News.id = '".$r['id']."'";
            $strQuery2 = mysql_query($sql2) or die(mysql_error());
            $rs = mysql_fetch_array($strQuery2);
            echo "<div class=\"firstPageArticleContent\"> <img src=\"admin/pictures/".$rs['filename']."\" width=\"150\" height=\"100\" align=\"right\"><br>";
          }
          echo "<div class=\"firstPageArticleHeader\">" . $r['headline'] . "</div>";
          
                                //HTML-taggar
                      $r['content'] = str_replace("<", "<", $r['content']);
                      $r['content'] = str_replace(">", ">", $r['content']);
                      //Fixar till radbrytningar
                      $r['content'] = str_replace("\n","<br />", $r['content']);
                      //"Forumkoder"
                      $r['content'] = str_replace("[b]","<b>", $r['content']);
                      $r['content'] = str_replace("[/b]","</b>", $r['content']);
                      $r['content'] = str_replace("[i]","<i>", $r['content']);
                      $r['content'] = str_replace("[/i]","</i>", $r['content']);
                      $r['content'] = str_replace("[u]","<u>", $r['content']);
                      $r['content'] = str_replace("[/u]","</u>", $r['content']);
                      $r['content'] = preg_replace("/\[url=([^]]+)]([^[]+)\[\/url]/",
                                                         "<a href=\"\\1\" target=\"_blank\">\\2</a>",
                                                         $r['content']);
          
          
          if(strlen($r['content']) > 150) {
     echo shortString($r['content'], 150)."..."; 

			echo "<img src=\"/images/blank.gif\" height=\"6\" width=\"1\"><br>";
            echo "<a href=\"index.php?id=" . $r['id'] . "\" class=\"toolBoxLink\">Läs mer&gt;&gt;</a></div>";
          }
          else {
            echo $r['content'];
            echo "<img src=\"/images/blank.gif\" height=\"6\" width=\"1\"><br>";
          }
  
          echo "<br><p class=\"date\">".$r['createdate'].", ".$r['fullname'];
        }
      }
      else {
  
        $curdate = date("Ymd");
        $sql1 = "SELECT News.id AS id, News.headline AS headline, News.content, " .
                  "DATE_FORMAT(News.createdate, '%Y-%m-%d') AS createdate, " .
                  "News.stopdate AS stopdate, User.fullname AS fullname, " .
                  "News.picture_id AS pic_id " .
                "FROM News, User " .
                "WHERE id = " . $_GET['id'] .
                  " AND News.author_username = User.username " .
                "ORDER BY startdate DESC";
        $strQuery = mysql_query($sql1) or die(mysql_error());
  
        echo "<table border=\"0\">";
        while ($r = mysql_fetch_array($strQuery)) {
          if(!empty($r['pic_id'])) {
                       $sql2 = "SELECT Files.id, Files.filename, Files.type " .
                    "FROM News, Files " .
                    "WHERE Files.id = News.picture_id AND News.id = '".$r['id']."'";

            $strQuery2 = mysql_query($sql2) or die(mysql_error());
            $rs = mysql_fetch_array($strQuery2);
  
            echo "<div class=\"firstPageArticleContent\"> <img src=\"admin/pictures/".$rs['filename']."\" width=\"150\" height=\"100\" align=\"right\"><br>";
          }
             //HTML-taggar
                      $r['content'] = str_replace("<", "<", $r['content']);
                      $r['content'] = str_replace(">", ">", $r['content']);
                      //Fixar till radbrytningar
                      $r['content'] = str_replace("\n","<br />", $r['content']);
                      //"Forumkoder"
                      $r['content'] = str_replace("[b]","<b>", $r['content']);
                      $r['content'] = str_replace("[/b]","</b>", $r['content']);
                      $r['content'] = str_replace("[i]","<i>", $r['content']);
                      $r['content'] = str_replace("[/i]","</i>", $r['content']);
                      $r['content'] = str_replace("[u]","<u>", $r['content']);
                      $r['content'] = str_replace("[/u]","</u>", $r['content']);
                      $r['content'] = preg_replace("/\[url=([^]]+)]([^[]+)\[\/url]/",
                                                         "<a href=\"\\1\" target=\"_blank\">\\2</a>",
                                                         $r['content']);
          
          echo "<div class=\"firstPageArticleHeader\">".$r['headline']."</div>";
          echo $r['content'];
          //echo "<a class=\"readMore\" href=\"index.php?id=".$r['id']."\" title=\"Test\">".$r['content']."</a>";
          echo "<img src=\"/images/blank.gif\" height=\"6\" width=\"1\"><br>";
          echo "<br><p class=\"date\">".$r['createdate'].", ".$r['fullname'];
          echo "<br>";
          echo "<a href=\"javascript:history.go(-1)\">Tillbaka</a>";
        }
      }
```

Permalänk: https://www.webforum.nu/p/145626

## #2 — UlfT, 2006-04-16T19:28Z

Jag ser tre nyheter, och alla tre är daterade. Det är i FF, om det nu har någon betydelse.

Permalänk: https://www.webforum.nu/p/1800725

## #3 — dahlgren, 2006-04-16T19:32Z

Hmm min webbläsare (firefox 1.0.6) så visas datument som hör till nyheten som ligger högst upp under det nedersta datumet. Ett snabbtest i IE så ser allt rätt ut. Inte så kosntigt att jag inte hittar fel i PHP-koden.

Permalänk: https://www.webforum.nu/p/1800728

## #4 — Peeer, 2006-04-16T20:40Z

För mig ser sidan ut likadant i både FF (1.0.6) och IE6.0. Svårt att lösa ett fel om man inte ser det.

Permalänk: https://www.webforum.nu/p/1800754

---

Tråden på webben: https://www.webforum.nu/amne/php/145626-problem-med-loop
