---
title: "Tips för att förbättra listning av nyhetsarkiv"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/132895-tips-för-att-förbättra-listning-av-nyhetsarkiv"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "kicki_an"
published: "2005-08-17T13:04:01.000Z"
updated: "2005-08-18T08:06:09.000Z"
replies: 7
views: 301
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/132895-tips-för-att-förbättra-listning-av-nyhetsarkiv"
---

# Tips för att förbättra listning av nyhetsarkiv

## #1 — kicki_an, 2005-08-17T13:04Z

Hejsan!

Vi har lite problem med vårt nyhetsarkiv. Det har blivit lite för många nyheter.
Nyheterna ligger i en databas som hämtas och de listas en efter en. Jag skulle nu vilja att enbart rubriken på nyheterna listas ( lagras som en egen entitet i databasen ), och att dessa rubriker fungerar som en länk. 
**rubrik1
rubrik2
rubrik3** 

Trycker man på länken listas hela nyheten nedanför. 
**rubrik1
   text1

rubrik2
rubrik3** 

Trycker man igen, så visas enbart rubriken igen.
**rubrik1
rubrik2
rubrik3** 

Detta är säkert enkelt, men jag kommer inte på det just nu

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

## #2 — Melea, 2005-08-17T13:15Z

Såhär hade jag gjort. :) 

```php
if(isset($_GET[ID])) {

   $sql_topic = mysql_query("
   SELECT * 
   FROM nyheter 
   WHERE ID = $_GET[ID]
   ") or die(mysql_error());
   $rows_topic = mysql_fetch_array($sql_topic);

      // Skriver ut nyheten med det ID:t man har tryckt på

   $sql = mysql_query("
   SELECT * 
   FROM nyheter 
   WHERE ID != $_GET[ID]
   ORDER BY ID
   ") or die(mysql_error());

} elseif(empty($_GET[ID])) {

   $sql = mysql_query("
   SELECT * 
   FROM nyheter 
   ORDER BY ID
   ") or die(mysql_error());

}

while($rows = mysql_fetch_array($sql)) {

   // Loopa ut rubrikerna

}
```

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

## #3 — kicki_an, 2005-08-17T13:26Z

Tack för ett snabbt svar. Men jag är osäker på hur det hela fungerar i mitt fall. 

Jag bifogar här en lite smaskig kod, och är tacksam om någon hade ork att ge exempel med mig ursprungskod.  :)
Jag är ingen hejare på php.

```php
$mainpage_news=mysql_query("SELECT * from intranet_news WHERE status='1' ORDER BY id DESC") or die ("Error: " . mysql_error());
while($row = mysql_fetch_array($mainpage_news))
{
	$id=$row["id"];
	$rubrik=$row["rubrik"];
	$datum=$row["datum"];
	$innehall=$row["innehall"];
    echo "<h3>$datum $rubrik</h3>";
	echo "<br>";
	echo $innehall;
	echo "<br>";
	echo "<hr>";
}
```

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

## #4 — Melea, 2005-08-17T13:48Z

:)

```php
if(isset($_GET[id])) {

	$sql_topic = mysql_query("
	SELECT * 
	FROM intranet_news
	WHERE id = $_GET[id]
	") or die(mysql_error());
	$rows_topic = mysql_fetch_array($sql_topic);

		echo '<h3>'.$rows_topic['datum'].' '.$rows_topic['rubrik'].'</h3><br>
		'.$rows_topic['innehall'].'<br><hr>';

	$sql = mysql_query("
	SELECT * 
	FROM intranet_news
	WHERE status = 1 AND id != $_GET[id]
	ORDER BY id DESC
	") or die(mysql_error());

} elseif(empty($_GET[id])) {

	$sql = mysql_query("
	SELECT * 
	FROM intranet_news
	WHERE status = 1
	ORDER BY id DESC
	") or die(mysql_error());

}

while($rows = mysql_fetch_array($sql)) {

	echo '<h3><a href="?id='.$rows[id].'">'.$rows['rubrik'].'</a></h3><br>';

}
```

**/r** Gjort en ändring, nu ska det nog funka bättre. :)

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

## #5 — kicki_an, 2005-08-17T14:21Z

Hejsan det funkar jättebra. Jag fick ändra i den andra sql-satsen, det var 2 WHERE med.
Toppen tack. 

En fråga till bara. Om man skulle vilja att den valda nyheten att läsa inte läggs överst utan i den ordningen den är listad. Hur gör man lämpligast då?

ex.
**Rubrik1
Rubrik2
  text2
Rubrik3**

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

## #6 — Pedda, 2005-08-17T14:51Z

```php
$sql = mysql_query("SELECT * FROM intranet_news WHERE status = 1 ORDER BY id DESC") or die(mysql_error());
while($rows = mysql_fetch_array($sql)) {
	if ($_GET['id'] == $rows['id']) {
		echo '<h3>'.$rows_topic['datum'].' '.$rows_topic['rubrik'].'</h3><br />'.$rows_topic['innehall'].'<br /><hr>';   	
	} else {
		echo '<h3><a href="?id='.$rows['id'].'">'.$rows['rubrik'].'</a></h3><br />';
	}
}
```

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

## #7 — Melea, 2005-08-17T16:10Z

> **kicki_an skrev:**
>
> Hejsan det funkar jättebra. Jag fick ändra i den andra sql-satsen, det var 2 WHERE med.
> Toppen tack.

Toppen! :)
Man ser oftast inte träden för all skog, bra att du löste det själv iallafall!

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

## #8 — akkeakker, 2005-08-18T08:06Z

Vet inte säkert men kanske mitt exempel här kan vara till hjälp.
<http://rogera.homeip.net/tester/riw-js-news.html>

edit:
observera att exemplet bara visar man kan använda javascript till sina nyhetsinlägg.

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

---

Tråden på webben: https://www.webforum.nu/amne/php/132895-tips-för-att-förbättra-listning-av-nyhetsarkiv
