Gå til innhold

Hjelp med kategori med underkategorier til hver


Anbefalte innlegg

Skrevet (endret)

Hei!

 

Litt vanskelig å forklare på så få ord som jeg må i tittelen, men jeg (prøver) å lage et forholdsvis simpelt forum. Derfor begynte jeg med en slik INNER JOIN:

<?php
mysql_connect("localhost", "username", "password");
mysql_select_db("database");

$query = "SELECT t1.id, t1.cat_name, t2.titlen FROM categories t1 INNER JOIN subcategories t2";

$q = mysql_query($query) or die('error: ' . mysql_error());

while($row = mysql_fetch_array($q)) {
$antkom = mysql_fetch_row(mysql_query("SELECT * FROM subcategories WHERE wh = " . $row['id']));
echo '<h1>' . htmlentities(stripslashes($row['cat_name'])) . '</h1>';
echo '<h3>' . htmlentities(stripslashes($antkom[1])) . '</h3>';
}
?>

 

 

 

Tabeller

 

`subcategories`

Klikk for å se/fjerne innholdet nedenfor
CREATE TABLE `subcategories` (
 `idn` int(11) NOT NULL auto_increment,
 `titlen` text NOT NULL,
 `descriptionn` text NOT NULL,
 `wh` text NOT NULL,
 PRIMARY KEY  (`idn`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4;

 

INSERT INTO `subcategories` VALUES (1, 'Subcategory...', 'Descroption of subcategory 1', '2');
INSERT INTO `subcategories` VALUES (2, 'Subcategory...jippi :)', 'description? don\\''t know what that is :S', '2');
INSERT INTO `subcategories` VALUES (3, 'titlen', 'descriptionn', '1');

 

 

`categories`

Klikk for å se/fjerne innholdet nedenfor
CREATE TABLE `categories` (
 `id` int(11) NOT NULL auto_increment,
 `cat_name` text NOT NULL,
 `cat_desc` text NOT NULL,
 PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3;

 

INSERT INTO `categories` VALUES (1, 'Category number one', 'This is a little nice description for \\"Category number one\\"');
INSERT INTO `categories` VALUES (2, 'Category number two', 'This is a little nice description for \\"Category number two\\"');

 

Og ja, en ting til: den inner joinen osv er sikkert ikke helt god. Har aldri vært borti den for å si det sånn ;P

 

 

Og ja, det som står i tabellene nå er bare kødd for å få vise litt tekst.

 

Outputen er her: andersmoen.com/forum

 

 

 

Edit: Der "antkom"'en kom inn, er jeg ihvertfall usikker på lol

Endret av Anders-Moen
Videoannonse
Annonse
Skrevet

Tror det er dumt å lagre underkategorier som underkategorier, istedenfor å lagre dem som kategorier, for dersmo du senere vil flytte en underkategori ut som en vanlig kategori, så har du et problem.

Skrevet

Jeg er ikke helt sikker på svaret kan være her, men jeg tror jeg har et lite tips til deg. Der du skriver ut alt på slutten, vil det vel være litt dumt å gjøre det manuelt? Hvorfor ikke bruke en foreach-løkke eller en while-løkke?

Skrevet
@Nazgul

Å? Da kan jo den raden bare flyttes over til categories?

 

@Rinox

Du gidder ikke hjelpe meg med det? Har aldri skjønt foreach-løkker helt :roll:

8906007[/snapback]

Fysisk flytting av rader? Ikke noe jeg ville gjort.

Ville mye heller opprettet en tabell til som sa hvilke tabeller som var "foreldre" og hvilke som var "barn", men hei, alle kan gjøre som de vil.

Skrevet (endret)

Ja, okay. Kanskje ikke så dumt, men vil det hjelpe meg med å printe ut underkategoriene som hører til kategoriene osv?

 

Edit:

Jeg mente, vil det gjøre det lettere for meg å printe de ut?

Endret av Anders-Moen
Skrevet

Vel, det mange misforstår angående foreach-løkker er at den ikke fungerer som while- eller for-løkker som gjør en handling gang på gang, men i stedet lager foreach variabler gang på gang ;)

Skrevet
Ja, okay. Kanskje ikke så dumt, men vil det hjelpe meg med å printe ut underkategoriene som hører til kategoriene osv?

 

Edit:

Jeg mente, vil det gjøre det lettere for meg å printe de ut?

8906441[/snapback]

Med JOINs skulle dette gå som en lek. Like greit å lære seg det først som sist.

Skrevet

Okay, skal prøve litt gjennom dagen så får vi se om jeg får til. Takk for hjelp så langt. Orker ikke starte opp serveren min akkurat nå, så jeg får ikke gjort noe nå, men i kveld regner jeg med

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...