Gå til innhold

Hente info fra phpBB og bruke i .php filer.


Anbefalte innlegg

Heisann, igjen. I portalen min som bruker phpBB 2.0.22 vil jeg også ha nyheter fra en et forum (lettere sagt ?f=1). Infoen herfra skal plasseres inn i et system (tables osv). Men problemet mitt er at jeg ikke veit hvordan jeg tar ut infoen riktig.

 

Klikk for å se/fjerne innholdet nedenfor
<table width="100%" height="171" border="0">
       <tr>
         <td height="167" valign="top"><table width="100%" border="1">
           <tr>
             <td height="41">Her kommer titlen, yo </td>
           </tr>
         </table>
           <table width="100%" height="87" border="1">
             <tr>
               <td height="81" valign="top"><div class="main" id="main">Her kommer en kort introduksjin av nyhetssaken. blaldldgisdjf dsføsdjsdøl jdsølf jk<br>
               a<br>
               a<br>
               a</div>
                 </td>
             </tr>
           </table>  
           <table width="100%" border="1">
             <tr>
               <td height="31">Forfatter: [forfatter] Publisert: [dato & tidspunkt] Kommentarer: [Antall posts] </td>
             </tr>
           </table></td>
       </tr>
</table>

 

Maleren skal se sånn ut:

bildetilforumux7.gif

 

Alt jeg trenger å få ut er:

 

Titel på tråden, 1. post, forfatter, tidspunk postet, antall kommentarer og link til tråden.

 

Det første jeg tenkte på var rss feed. Men jeg vil også ha en funkson med sidetall slik at jeg kan bla tilbake i eldre nyhetssaker og sånt. Og tror derfor at databaser er riktig valg. Noen som kan hjelpe meg i gang?

 

- Th0mas^

Lenke til kommentar
Videoannonse
Annonse

Her er ett utdrag fra en nyhetsside jeg har "skrudd" sammen (er nok rom for litt oppryddning i bruken av class og style for css bruk :blush: ). Blir også brukt tables, men det var eneste måten jeg fikk til ønsket resultat med bildet, ellers så prøver jeg å få til ting med div, span og css (er på nybegynnerstadiet på en del områder enda :thumbup: )

 

SELECT'ene må tilpasses ditt behov :)

 

Klikk for å se/fjerne innholdet nedenfor
PHP

//nyheter fra registrerte brukere

  echo '<a name="bn"> </a>';  

 

//totalt antall nyheter  

  $antnyh=mysql_fetch_row(

          mysql_query('SELECT count(*) 

                       FROM nyheter

                       ORDER BY DATE_FORMAT( dato, '%Y-%m-%d' ) DESC, id DESC'));

                       

  //antall nyheter som skal vises pr side

  $antside=15;

  

  if (!isset($_GET['side'])) $_GET['side']=1;  

  if (isset($_GET['side']) AND is_numeric($_GET['side']) AND $_GET['side']>=2) 

    $fra=($_GET['side']-1)*$antside;

  else 

    $fra=0;

  

  $query='SELECT t1.id nid, t1.header header, t1.tekst tekst, t1.url url, 

DATE_FORMAT( t1.dato, '%d.%m.%y') dato, t1.bilde bilde, t2.navn, t2.id idd

          FROM nyheter t1, utover t2

          ORDER BY DATE_FORMAT( dato, '%Y-%m-%d' ) DESC, t1.id DESC

         LIMIT '.mysql_real_escape_string($fra).','.$antside;     

  $result=mysql_query($query);

 

  echo '<div id="brnyh">';

  while ($row=mysql_fetch_assoc($result))

  {

   echo '<div class="col1n" style="margin-bottom: 1em;">';

    echo '<div class="toversk">';

    echo '<table class="head_tab" cellspacing="0"><tr><td class="to_head">';

    if (strlen($row['url'])>0) echo '<a href="http://'.$row['url'].'">';

    echo $row['header'];

    if (strlen($row['url'])>0) echo '</a>';

    echo '</td><td class="skille"> </td></tr></table>';

    echo '</div>';

    

    echo '<div class="sak">';

    

    echo '<table style="width:100%;"><tr>';

    echo '<td style="vertical-align: top; width: 129px;"><img src=".$row['bilde'].'" border="0" alt="" /></td>';

    echo '<td style="vertical-align: top; padding: 5px 5px 5px 1em; text-align: left;">';

    $row['tekst']=str_replace('&','&',$row['tekst']);

   if (strlen($row['tekst'])>300)    

    {

      $j=300;

     while (substr($row['tekst'],$j,1)!=' ')

        $j++;

      echo nl2br(substr($row['tekst'],0,$j));

      echo ' ... <div class="infourl"><a href="index.php?opt=nd&i='.$row['nid'].'">Les mer</a></div>';

    }

    else

      echo nl2br($row['tekst']);

        

    //echo '</div>';

    echo '</td></tr></table></div>';

    echo '<div class="bunn">';

    if (strlen($row['url'])>0) echo '<span style="float: right;"><a href="http://'.$row['url'].'">Mer info</a></span>';

    echo '<span style="font-weight: bold;">Publisert:</span><span> '.$row['dato'].'</span>';

    echo '  <span style="font-weight: bold;">Av:</span> <span class="teraurl"><a href="index.php?opt=terapeut&t='.$row['idd'].'">'.$row['navn'].' <img src="bilder/infoikon2.gif" alt="info" /></a></span>';

    echo '</div>';

    echo '</div>';

  }

 

  //sidedeling

  echo '<div class="sidedeling">';

  //echo $antnyh[0].'<br />';

  echo '<span style="font-weight: bold; font-size: 14px;">Side: </span>';

  echo '<span style="font-size: ';

  if ($_GET['side']==1) echo '14px; font-weight: bold';

    else echo '12px';

  echo ';"><a href="index.php#bn">1</a></span>';

  $sider=ceil($antnyh[0]/$antside);

  if ($antnyh[0]>$antside)

  {

    $diffn=2;  //differanse ned, hvor mange sider skal vises nedover fra aktiv side  

    $diffo=2;  //differanse opp, hvor mange sider skal vises oppover fra aktiv side

  

    if ($_GET['side']>=$diffn) 

    {

      $j=$_GET['side']-$diffn;

      if ($j<3) $j=2;

    }

    else $j=2;

 

    if ($_GET['side']>$diffn+2) echo '<span>...</span>';

    

    if ($sider>2)

    {

      while ($j<=$_GET['side']+$diffo)

      {

        echo '<span style="font-size:';

        if ($_GET['side']==$j) echo '14px; font-weight: bold';

          else echo '12px';

        echo ';"><a href="index.php?side='.$j.'#bn">'.$j.'</a></span>';

        if ($j+1==$sider) break;

          else $j++;

      }

      if ($_GET['side']<$sider-$diffo-1) echo '<span>...</span>';

    }      

    echo '<span style="font-size:';

    if ($_GET['side']==$sider) echo '14px; font-weight: bold';

      else echo '12px';

    echo ';"><a href="index.php?side='.$sider.'#bn">'.$sider.'</a></span>';

  }

  echo '</div>';

  //sidedeling slutt

Endret av crowly
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...