---
title: "Räkna hur många bilder en viss kategori innehåller"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/184373-räkna-hur-många-bilder-en-viss-kategori-innehåller"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Emil W"
published: "2010-08-15T15:56:41.000Z"
updated: "2010-08-18T18:45:23.000Z"
replies: 12
views: 792
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/184373-räkna-hur-många-bilder-en-viss-kategori-innehåller"
---

# Räkna hur många bilder en viss kategori innehåller

## #1 — Emil W, 2010-08-15T15:56Z

Hur ska man göra så att att han visar hur många bilder en kategori innehåller ?

Jag har aldrig hållit på med sånt förut.

Jag har en tabell med kategorier och en tabell med adresserna till bilderna.

Typ 

Rubrik       Antal bilder

Järnväg        5 st
Träd            1 st
Ormar          0 st

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

## #2 — tydal, 2010-08-15T16:13Z

SELECT COUNT(\*) AS antal, kategori FROM bilder
LEFT JOIN kategorier USING (kategoriID)
GROUP BY bildID

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

## #3 — Emil W, 2010-08-15T16:18Z

Hur jag ändrar sql-satesen ?

så ser tabellerna ut

kgalleri

id \| rubrik

galleri

id \| katid \| rubrik \| adress \| kl

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

## #4 — tydal, 2010-08-15T16:24Z

SELECT COUNT(\*) AS antal, kgalleri.rubrik FROM galleri
LEFT JOIN kgalleri ON (galleri.katid = kgalleri.id)
GROUP BY kgalleri.id

(missade ett k på slutet.)

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

## #5 — newseed, 2010-08-15T16:30Z

Detta borde fungera:

```
SELECT 
  kg.rubrik, count(*) antal
FROM
  kgalleri kg LEFT OUTER JOIN galleri g on (kg.id = g.katid)
GROUP BY
  kg.rubrik
```

Antagande: katid i tabellen galleri är kgalleris id.
Antagande: tabellen galleri innehåller bilderna och kgalleri rubrikerna du vill gruppera efter. Koden fungerar även om en rubrik ej har några bilder.

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

## #6 — Emil W, 2010-08-15T17:17Z

Den skriver ut att det finns 2 bilder i alla kategorier fast det inte finns.

Det finns bara 2 bilder i en kategori.

Vad kan vara felet ?

Jag lägger lite kod,så ser ni.

```php
$id = mysql_query("SELECT COUNT(*) AS antal, kgalleri.rubrik FROM galleri
LEFT JOIN kgalleri ON (galleri.katid = kgalleri.id)
GROUP BY kgalleri.id");

$ha = mysql_result($id,0,'antal');

while($row = mysql_fetch_array($iaa))
{
$i++;
if ($i % 2)
echo('<tr class="uddarad">');
else
echo('<tr class="jamnrad">');
echo "<td><a href=visabilder.php?katid=".intval($row['id']).">".htmlspecialchars($row['rubrik'])."</a></td>";
echo "<td>$ha</td>";
echo "</tr>";
}
echo "</table>";
```

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

## #7 — newseed, 2010-08-15T18:34Z

Vad säger den om du testar min SQL istället?

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

## #8 — Emil W, 2010-08-15T19:05Z

Den visar 1 på alla istället.

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

## #9 — newseed, 2010-08-15T21:17Z

Kan du lägga in lite exempeldata i de tabeller du postade tidigare?

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

## #10 — metalboy, 2010-08-15T21:25Z

Du sätter värdet på $ha utanför loopen, den kommer då ha samma värde för varje varv i loopen.

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

## #11 — Emil W, 2010-08-15T21:39Z

> **[metalboy skrev:](https://www.webforum.nu/p/1513212)**
>
> Du sätter värdet på $ha utanför loopen, den kommer då ha samma värde för varje varv i loopen.

Hur ska jag göra då ?

> **[newseed skrev:](https://www.webforum.nu/p/1513211)**
>
> Kan du lägga in lite exempeldata i de tabeller du postade tidigare?

Jag har redan gjort det.

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

## #12 — Shakor, 2010-08-17T10:10Z

Nu kanske det är lite sent med svar på den här frågan, men..  Här har du nåt som borde fungera =)

SELECT kategori.rubrik, COUNT( galleri.id )
FROM kategori
LEFT JOIN galleri ON kategori.id = galleri.katid
GROUP BY kategori.rubrik
ORDER BY kategori.id ASC

```php
 $con = mysql_connect("server","user","password");
 if (!$con)
 {
      die('Could not connect: ' . mysql_error());
 }

 mysql_select_db("database_of_choice", $con);

 $result = mysql_query("SELECT kategori.rubrik AS rubrik, COUNT(galleri.id) as counter FROM kategori LEFT JOIN galleri ON kategori.id=galleri.katid GROUP BY kategori.rubrik ORDER BY kategori.id ASC");

 while($row = mysql_fetch_array($result))
 {
     echo $row['rubrik'] ."&nbsp; &nbsp; " . $row['counter']."st";
     echo "<br />";
 }

 mysql_close($con);
```

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

## #13 — Emil W, 2010-08-18T18:45Z

Tack så mycket för hjälpen :)

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

---

Tråden på webben: https://www.webforum.nu/amne/php/184373-räkna-hur-många-bilder-en-viss-kategori-innehåller
