Avatar billede doncarnage Nybegynder
20. juli 2009 - 02:56 Der er 2 kommentarer og
1 løsning

Opdatere og forhindre udskrivning af titel, hvis den allerede står der

Jeger stødt på et lille problem i forbindelse med min udskrivning af "titler". På en side udskriver jeg titlerne på de nyeste debatterede forum tråde. Det ser fx ud som dette:

Debat:
- Titel #56
- Titel #32
- Titel #12
- Titel #32
- Titel #15

Problemet er at scriptet ikke tager hensyn til om titlen allerede står der og den udskriver derfor den samme titel op til flere gange, hvis de nyeste kommentarer ligger deri.

Jeg vil derfor gerne gøre sådan at hvis titlen allerede er udskrevet blandt de mest debatterede forum tråde, så skal den fjerne denne titel og tilføje titlen forfra. Men hvordan gør jeg dette?


"Scriptet" ser ud som dette:


      <?php               
    $query = mysql_query("
       
    SELECT comments.*, forum_topics.title FROM comments
    INNER JOIN forum_topics ON comments.topic_id = forum_topics.topic_id
    WHERE comments.type = 4
       
    ORDER BY time DESC LIMIT 7") or die(mysql_error());
       
    while ($row = mysql_fetch_assoc($query)) {

    echo '<div class="textnewest">» ';
       
      $message = nl2br(htmlspecialchars($row['title']));
    $message = str_replace("<br />","...", $message);   
               
        if(strlen($message)>30){
        $titel = substr($message,0,30);
        $ending = "...";
        }
        else{
        $titel = $message;
        $ending = "";
        }

    echo '<a href= forum/kategori/';
    echo nl2br(htmlspecialchars($row['forum_id']));
    echo '/topic/';
    echo nl2br(htmlspecialchars($row['topic_id']));
    echo '#';
    echo nl2br(htmlspecialchars($row['id']));
    echo ' class="alternative">';
    echo $titel;
            echo $ending;
    echo '</a>';
    echo '</div>';
    }       
      ?>
Avatar billede mrgumble Nybegynder
20. juli 2009 - 09:49 #1
Prøv denne SQL-sætning:

    SELECT DISTINCT comments.*, forum_topics.title FROM comments
    INNER JOIN forum_topics ON comments.topic_id = forum_topics.topic_id
    WHERE comments.type = 4
     
    ORDER BY time DESC LIMIT 7"
Avatar billede doncarnage Nybegynder
20. juli 2009 - 11:55 #2
Virkede desværre ikke mrgumble :/
Avatar billede doncarnage Nybegynder
22. juli 2009 - 13:17 #3
Lukker tråden og prøver noget andet :(
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