Avatar billede EliteQ Nybegynder
09. februar 2009 - 00:38 Der er 5 kommentarer

Side skift i nyheder

Hey. Har et lille nyhedssystem på en hjemmeside jeg er ved at lave med en kammerat. Problemet er når man opretter nyheder bliver de bare ved. Hvordan får jeg den til at vise et bestemt antal numre af nyheder, også skifte side?



Scriptet er under:

<?php


// get all the news

$query = "SELECT * FROM news ORDER BY id DESC";
$result = mysql_query($query) or die (mysql_error());
$total = @mysql_num_rows($result);

// error check

if ($total == 0)
  {
  echo "<div class='error'>Der er ikke blevet tilføjet nogen nyheder</div>";
}else{

  // loop the results
 
  $i = 0;
 
  $lim = 5; // max news to show
 
  echo "Der er ialt $total nyheder<br /><br />";
 
  while($i < $total and $i < $lim)
    {
    $title = mysql_result($result, $i, 'title');
    $news = mysql_result($result, $i, 'news');
    $author = mysql_result($result, $i, 'author');
    $added = mysql_result($result, $i, 'added');
    $category = mysql_result($result, $i, 'category');
    $id = mysql_result($result, $i, 'id');
    $image = @mysql_result($result, $i, 'image');
?>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.style1 {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
color: #FFFFFF;
}
-->
</style>

<p class="news_layout">
<br /><br />
</p>
<table height="55" width="300" background="images/news_banner.png">
  <tr>
    <td height="55" width="300" background="../images/news_banner.png"> <span class="style1">       <strong><?php echo $title; ?></strong><br />
    <br />
    <br /></span></td>
  </tr>
</table>
<p class="news_layout"><br />
  <span class="news_links">Kategori: <?php echo $category; ?></span><br />
  <br />
  <span class="news_links"><strong>Skrevet af : <em><?php echo $author; ?></em></strong> på <?php echo $added; ?></span>  <a href="index.php?page=news_manager&id=<?php echo $id; ?>&action=edit"/>Rediger</a>
  <span class="news">
<?php echo nl2br($news); ?></span></p>
<?php
$i++;
}
}
?>
Avatar billede jakobdo Ekspert
09. februar 2009 - 08:15 #1
Når du siger skifte side, snakker vi så paging ?
Prøv at kig under guides -> php -> paging
Avatar billede EliteQ Nybegynder
09. februar 2009 - 11:37 #2
Ja, det er paging. Har kigget på dem og kan ikke helt få det til at virke. Det skulle gerne være sådan at den viser hele nyheder, også når der kommer 5 eller 10 så skifter den side, har fundet nogle men der er det kun overskriften.
Avatar billede jakobdo Ekspert
09. februar 2009 - 11:46 #3
Paging er jo i bund og grund blot et spørgsmål om at anvende:

LIMIT OFFSET,ANTAL

Har du kigget på det ?
Avatar billede EliteQ Nybegynder
09. februar 2009 - 12:12 #4
Ja det har jeg. Men tænkte om man ikke bare kunne indsætte et eller andet simpelt på min fil så den bare skiftede side? Det er måske ikke så simpelt som det lyder.
Avatar billede jakobdo Ekspert
09. februar 2009 - 12:19 #5
Jo.
Start med at lave offset i toppen:

$offset = (isset($_GET['offset']) && is_numeric($_GET['offset']) && $_GET['offset'] > 0) ? intval($_GET['offset']) : 0;

$limit = 5;

$result = mysql_query("SELECT * FROM nyheder LIMIT $offset, $limit");

Vis dine nyheder...

og så skal der laves lidt kode til at vise en forrige og næste knap. :o)
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