Avatar billede esbenn Nybegynder
09. september 2010 - 16:32 Der er 1 kommentar og
1 løsning

Løkke fejl

Hej...

Jeg henter lige nu en komma opdelt liste med tags i en database på denne måde:

<?php
$blog = mysql_query("SELECT object_id from ideaal_term_relationships WHERE term_taxonomy_id='3' order by object_id DESC LIMIT 0,3");
while($blog_row = mysql_fetch_array($blog))
{
    $blog_id=$blog_row['object_id'];
    $blog_post = mysql_query("SELECT post_date,post_title,post_excerpt from ideaal_posts WHERE ID='$blog_id' and post_status='publish'");
    while($blog_post_row = mysql_fetch_array($blog_post))
    {
        setlocale(LC_TIME, 'da_DK');
        $myDate = $blog_post_row['post_date'];
        $date= strftime('%e. %B %Y',strtotime($myDate));
        // Hvis kl skal med, så ændre strftime('%e. %B %Y',strtotime($myDate)); til strftime('%e. %B %Y kl. %T',strtotime($myDate));
       
        $res = mysql_query("SELECT ideaal_terms.name FROM ideaal_terms INNER JOIN ideaal_term_relationships ON ideaal_terms.term_id=ideaal_term_relationships.term_taxonomy_id WHERE ideaal_term_relationships.object_id='$blog_id'");
        while($rows = mysql_fetch_array($res))
        {
            $arrtest[] = $rows['name'];
        }
        $tags = implode(", ",$arrtest);
    echo "<div class='home_blog'><div class='blog_title'><a href='?page_id=13&blog=".$blog_id."' class='headerlink'>".$blog_post_row['post_title']."</a></div><span class='blog_date'>".$date."</span>&thinsp;<span class='blog_tag'>".$tags."</span><div class='blog_ref'>".$blog_post_row['post_excerpt']."</div><div class='blog_more'><a href='?page_id=13&blog=".$blog_id."' class='nav_link'>Læs mere...</a></div></div>";
       
    }
}
?>

Databaserne er opbygget lidt underligt, derfor jeg skal have fat i så mange før det kan lykkes... Men problemet er at den ikke laver en ny liste til hver enkelt indlæg, men bygger bare videre på den allerede eksisterende liste af tags... Hvilket vil sige efter ca 5 indlæg er en hel del...

Derfor håber jeg nogen lige kan se en fejl i min løkke eller et andet problem :)
Avatar billede xicrow Nybegynder
09. september 2010 - 16:39 #1
Du mangler at oprette/nulstille dit array, hvergang du looper igennem en ny blog-post.

Har indsat det i koden for dig herunder:
<?php
$blog = mysql_query("SELECT object_id from ideaal_term_relationships WHERE term_taxonomy_id='3' order by object_id DESC LIMIT 0,3");
while($blog_row = mysql_fetch_array($blog))
{
    $blog_id=$blog_row['object_id'];
    $blog_post = mysql_query("SELECT post_date,post_title,post_excerpt from ideaal_posts WHERE ID='$blog_id' and post_status='publish'");
    while($blog_post_row = mysql_fetch_array($blog_post))
    {
        // Opretter/nulstiller array til tags
        $arrtest = array();

        setlocale(LC_TIME, 'da_DK');
        $myDate = $blog_post_row['post_date'];
        $date= strftime('%e. %B %Y',strtotime($myDate));
        // Hvis kl skal med, så ændre strftime('%e. %B %Y',strtotime($myDate)); til strftime('%e. %B %Y kl. %T',strtotime($myDate));
     
        $res = mysql_query("SELECT ideaal_terms.name FROM ideaal_terms INNER JOIN ideaal_term_relationships ON ideaal_terms.term_id=ideaal_term_relationships.term_taxonomy_id WHERE ideaal_term_relationships.object_id='$blog_id'");
        while($rows = mysql_fetch_array($res))
        {
            $arrtest[] = $rows['name'];
        }
        $tags = implode(", ",$arrtest);
    echo "<div class='home_blog'><div class='blog_title'><a href='?page_id=13&blog=".$blog_id."' class='headerlink'>".$blog_post_row['post_title']."</a></div><span class='blog_date'>".$date."</span>&#8201;<span class='blog_tag'>".$tags."</span><div class='blog_ref'>".$blog_post_row['post_excerpt']."</div><div class='blog_more'><a href='?page_id=13&blog=".$blog_id."' class='nav_link'>Læs mere...</a></div></div>";
     
    }
}
?>



/xicrow
Avatar billede esbenn Nybegynder
10. september 2010 - 09:40 #2
Typisk at man ikke ser sådan en lille fejl! :)

Men tak for det - virker!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester