Avatar billede kane Juniormester
27. maj 2004 - 16:42 Der er 15 kommentarer og
1 løsning

type, navn og pris?

Hej
Jeg har en del vin fra en butik jeg skal have smidt rigtigt ind i en db (den version der er nu er en nødløsning) det som driller mig er, jeg har en 12-13 typer, hvor nogle har 2-3 undertyper og et navn, årgang og en pris. hvordan lister jeg det i et huk?
Avatar billede Slettet bruger
27. maj 2004 - 16:48 #1
Prøv at beskrive dine data lidt mere præcist. Gerne med eksempler, så er det lettere at gennemskue.
Avatar billede kane Juniormester
27. maj 2004 - 16:57 #2
Avatar billede kane Juniormester
27. maj 2004 - 16:57 #3
sådan ser den ud.......og sådan skal den se ud efter den er rigtigt
Avatar billede Slettet bruger
27. maj 2004 - 17:29 #4
Jeg vil prøve at se på det.
Avatar billede coderdk Praktikant
27. maj 2004 - 18:37 #5
Hvad med en struktur som:

CREATE TABLE winetype (
  winetypeid UNSIGNED INT(10) NOT NULL AUTO_INCREMENT
  ,winetypename VARCHAR(100) NOT NULL
  ,PRIMARY KEY(winetypeid)
);
-- Eksempel: Languedoc

CREATE TABLE winearea (
  wineareaid UNSIGNED INT(10) NOT NULL AUTO_INCREMENT
  ,winetypeid UNSIGNED INT(10) NOT NULL
  ,wineareaname VARCHAR(100) NOT NULL
  ,PRIMARY KEY(wineareaid)
);
-- Eksempel: Domaine Preignes Le Vieux (som er Languedoc)

CREATE TABLE wine (
  wineid UNSIGNED INT(10) NOT NULL AUTO_INCREMENT
  ,wineareaid UNSIGNED INT(10) NOT NULL
  ,winename VARCHAR(100) NOT NULL
  ,wineyear VARCHAR(10)
  ,wineprice INT(10) NOT NULL
  ,PRIMARY KEY(wineid)
);
-- Eksempel: Coteaux Du Libron fra Domaine Preignes Le Vieux (som er Languedoc)

Det betyder at du får samme "tomme" række ved spiritus osv, og wineyear er en varchar så du kan skrive 12 år i stedet for 2001...
Avatar billede coderdk Praktikant
27. maj 2004 - 18:37 #6
Derefter er det iøvrigt trivielt at hive det hele ud på én gang med samme udseende som du har på siden.
Avatar billede coderdk Praktikant
27. maj 2004 - 18:44 #7
noget i stil med:

$sql = "
    SELECT
        wt.winetypename
        ,wa.wineareaname
        ,w.winename
        ,w.wineyear
        ,w.wineprice
    FROM
        wine w
    INNER JOIN winarea wa ON
        w.wineareaid = wa.wineareaid
    INNER JOIN winetype wt ON
        wa.winetypeid = wt.winetypeid
    ORDER BY
        wa.winetypename
        ,wt.wineareaname
        ,w.winename
    ";
$qh = mysql_query( $sql );
$oldt = '-';
$olda = '-';
while ( $row = mysql_fetch_assoc( $qh  ) )
{
    if ( $row['winetypename'] != $oldt )
    {
        echo "<h3>$row[winetypename]</h3>";
        $oldt = $row['winetypename'];
    }
    if ( $row['wineareaname'] != $oldt )
    {
        echo "<b>$row[wineareaname]</b><br>";
        $olda = $row['wineareaname'];
    }
    echo "$row[winename] $row[wineyear] $row[wineprice]<br>";
}


Bemærk, intet af det jeg har skrevet er testet ;)
Avatar billede coderdk Praktikant
27. maj 2004 - 18:45 #8
Den 2.:

if ( $row['wineareaname'] != $oldt )

Skulle naturligvis være:

if ( $row['wineareaname'] != $olda )

:)
Avatar billede sukos Juniormester
27. maj 2004 - 21:56 #9
Måske lidt inspiration:
http://www.eksperten.dk/spm/503055

Og hold dem bare i en table!
Avatar billede dennismp Nybegynder
11. juni 2004 - 21:23 #10
Dette problem blev løst i http://www.eksperten.dk/spm/506265 efter det oprindelige spørgsmål blev accepteret og lukket. Da det var mest logisk at arbejde videre på den kode der var lavet der, forsatte vi udviklingen så dette spørgsmål blev besvaret.

CoAdmins: Må jeg så lægge et svar og få pointene herfra?
Avatar billede dennismp Nybegynder
12. juni 2004 - 11:47 #11
det mener folk jeg godt må (http://www.eksperten.dk/spm/508901)

Så du får et svar..
Avatar billede snowball Novice
12. juni 2004 - 12:04 #12
Se venligst min kommentar i http://www.eksperten.dk/spm/508901

Snowball / CoAdmin
Avatar billede kane Juniormester
12. juni 2004 - 12:23 #13
svar
Avatar billede kane Juniormester
12. juni 2004 - 12:26 #14
doh.
nå nm
slap lidt af, det er kun point og jeg fik hjælp, vi klaret bare det hele i samme tråd.
Avatar billede dennismp Nybegynder
12. juni 2004 - 12:41 #15
Det er fair nok. Jeg havde det på fornemmelsen, du kan få dine points her:

http://www.eksperten.dk/spm/508991
Avatar billede snowball Novice
12. juni 2004 - 13:20 #16
kane: Det er "bare" point ja, men Eksperten har nogle regler som skal følges (hvilket du jo accepterede da du oprettede din bruger) så derfor bedes du venligst lave et svar i http://www.eksperten.dk/spm/508991 så vi kan få afklaret den sag.

Snowball / CoAdmin
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