---
title: "Hämta ut text"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/183524-hämta-ut-text"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Emil W"
published: "2010-05-17T20:15:08.000Z"
updated: "2010-08-28T16:52:54.000Z"
replies: 17
views: 1176
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/183524-hämta-ut-text"
---

# Hämta ut text

## #1 — Emil W, 2010-05-17T20:15Z

Vet inte riktigt hur jag ska hämta ut text så att det blir så här

först kategorinamn
och sen produkter

ungefär så här

Inbakade pizzor

Calzone
Skinka,ost,tomatsås

Zaiman
Skinka,ost,tomatsås,banan och curry

Tacksam för svar

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

## #2 — The_Hulk, 2010-05-18T05:47Z

Var har du sparat informationen?
Är det i en databas, xml eller annat format?

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

## #3 — Emil W, 2010-05-18T07:25Z

i databas

så här ser det ut

produkttabellen

\|id \| katid \| namn \| beskrivning \| pris

och så här ser det ut i kategoritabellen

id \| rubrik

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

## #4 — voigtann1, 2010-05-18T08:14Z

Finns många sätt att lösa det på,

loopar ut din **kategoritabell** och kör en SQL fråga för att hämta allt ifrån **produkttabellen**
Problemet där är att det bli rätt många SQL frågor du kör för få ut det du är ute efter,
en annan lösning är att köra INNER JOIN på dina två tabeller och sortera efter katid, kategoritabellen.rubrik och gemföra med en php variabel om rubrik har ändrats, om den har det så skriv ut en ny rubirk, annars skriv bara ut produkttabellen.

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

## #5 — Emil W, 2010-05-18T13:07Z

> **[voigtann1 skrev:](https://www.webforum.nu/p/1505151)**
>
> Finns många sätt att lösa det på,
> 
> loopar ut din **kategoritabell** och kör en SQL fråga för att hämta allt ifrån **produkttabellen**
> Problemet där är att det bli rätt många SQL frågor du kör för få ut det du är ute efter,
> en annan lösning är att köra INNER JOIN på dina två tabeller och sortera efter katid, kategoritabellen.rubrik och gemföra med en php variabel om rubrik har ändrats, om den har det så skriv ut en ny rubirk, annars skriv bara ut produkttabellen.

Har du lust att visa ett exempel hur man gör med inner join ?

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

## #6 — voigtann1, 2010-05-18T13:39Z

<http://www.w3schools.com/sql/sql_join.asp> är en rätt bra start för dig.

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

## #7 — GunnarD, 2010-05-18T13:39Z

Något så här kanske:

```
SELECT k.rubrik AS Pizza, p.Namn AS Ingridiens FROM Kategori AS k LEFT JOIN Produk AS p ON k.id=p.katid ORDER BY Pizza, Ingridiens
```

Då får du ut så här:

Pizza1:ingridiens1
Pizza1:ingridiens2
Pizza1:ingridiens3
Pizza2:ingridiens1
Pizza2:ingridiens2

Då är det bara att hålla koll på när Pizza byter namn.

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

## #8 — voigtann1, 2010-05-18T13:40Z

GunnarD, glöm inte order by ;)

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

## #9 — GunnarD, 2010-05-18T13:44Z

> **[voigtann1 skrev:](https://www.webforum.nu/p/1505183)**
>
> GunnarD, glöm inte order by ;)

Tillagt, tack för det.

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

## #10 — Emil W, 2010-05-18T14:12Z

> **[GunnarD skrev:](https://www.webforum.nu/p/1505182)**
>
> Något så här kanske:
>
>
> ```
> SELECT k.rubrik AS Pizza, p.Namn AS Ingridiens FROM Kategori AS k LEFT JOIN Produk AS p ON k.id=p.katid ORDER BY Pizza, Ingridiens
> ```
>
>
> Då får du ut så här:
>
> Pizza1:ingridiens1
> Pizza1:ingridiens2
> Pizza1:ingridiens3
> Pizza2:ingridiens1
> Pizza2:ingridiens2
>
> Då är det bara att hålla koll på när Pizza byter namn.

Hej GunnarD

Hur gör jag om mina fält heter

 
fält i produkttabellen

id  katid namn beskrivning 	pris

och fält i kategori tabellen 

id \| rubrik

hur ändrar jag det

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

## #11 — voigtann1, 2010-05-18T14:17Z

läs länken jag skickade om hur JOIN fungera:

```
SELECT p.namn, p.beskrivning, p.pris, k.rubrik FROM <kategori tabellen> k LEFT JOIN <produkttabellen> p ON p.katid = k.id ORDER BY k.rubrik, p.namn
```

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

## #12 — Emil W, 2010-05-18T14:18Z

Ja det ska jag göra

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

## #13 — GunnarD, 2010-05-18T14:36Z

Kan även vara bra att läsa på hur AS fungerar. :)

Ser nu att jag kanske förvirrade i.o.m att jag trodde Kategori var Pizzan, det kanske är om den är inbakad eller ej. Då kanske jag inte skulle döpt Kategorinamnet till Pizza. :)

Annars stämmer den, voigtann1 är samma fast utan att sätta namn på kolumnerna utan använder dom verkliga/riktiga.

Men det som gör själva jobbet är join satsen, och skall man hålla på med SQL så är det bra att kunna hur dom olika join'arna fungerar.

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

## #14 — Emil W, 2010-08-27T21:11Z

Jag håller på med en annan sak nu som ska fungera lika dant,
men den skriver ut så här

Diverse forum - övrigt

Information

Nyheter
Endast till för nyhetsmeddelanden som visas på första sidan.

Webbutveckling
Javascript
Här diskuteras allt som har med javascript att göra.

Webbutveckling
Php
Här diskuteras allt som har med php att göra.

Jag vill bara att den ska skriva ut webbutveckling bara en engång.

Hur löser man det ?

Edit: Glömde koden här kommer den.

```php

include('bcon.php');

$con = mysql_connect($server,$user,$pass);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db($data,$con);

$ut = "SELECT p.rubrik, p.texter, p.katid, k.rubrikk FROM kategorier k LEFT JOIN underkategorier p ON p.katid = k.id ORDER BY k.rubrikk, p.rubrik";
$it = mysql_query($ut);

while($row = mysql_fetch_array($it))
{
echo htmlspecialchars($row['rubrikk']);
echo "<br>";
echo htmlspecialchars($row['rubrik']);
echo "<br>";
echo htmlspecialchars($row['texter']);
echo "<br><br>";
}
?>
```

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

## #15 — voigtann1, 2010-08-28T06:04Z

spara undan $row\['rubrikk'\] i en variabel, och kolla vid varje loop om den variablen INTE är vad $row\['rubrikk'\] är om den är annolunda så skall den skriva ut $row\['rubrikk'\] annars hoppa över den.

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

## #16 — Emil W, 2010-08-28T11:07Z

Har du lust att visa ? 

Här kommer koden.

```php
while($row = mysql_fetch_array($it))
{
$ru = htmlspecialchars($row['rubrikk']);
echo $ru;
echo "<br>";
echo htmlspecialchars($row['rubrik']);
echo "<br>";
echo htmlspecialchars($row['texter']);
echo "<br><br>";
}
```

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

## #17 — MickeA.com, 2010-08-28T11:44Z

Såhär:

```php
$ru = 0;
while($row = mysql_fetch_array($it)){
	if($ru != $row['rubrikk']){
	   echo htmlspecialchars($row['rubrikk']) . "<br />";
	}
	echo htmlspecialchars($row['rubrik']);
	echo "<br>";
	echo htmlspecialchars($row['texter']);
	echo "<br><br>";

	$ru = $row['rubrikk'];
}
```

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

## #18 — Emil W, 2010-08-28T16:52Z

Tack för hjälpen alla

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

---

Tråden på webben: https://www.webforum.nu/amne/php/183524-hämta-ut-text
