Avatar billede mydream Nybegynder
09. marts 2005 - 17:09 Der er 12 kommentarer og
1 løsning

Opslag i 2 tabeller

Jeg har en tabel(BILLEDER), der indeholder en række url'er til billeder, og jeg har en tabel(TILBUD), der indeholder en overskrift, en beskrivelse og et billednummer, der svarer til de numre der findes i billedtabellen.

Nu skal jeg hente dataene ned fra TILBUD, for derefter at slå nummeret op i BILLEDER for at finde den rette url.

Der er kun een række i TILBUD, da der kun eksisterer eet tilbud af gangen.

Det er sikkert simpelt, men jeg kan ikke få enderne til at nå sammen.
Avatar billede jensgram Nybegynder
09. marts 2005 - 17:13 #1
SELECT t.*, b.URL FROM TILBUD AS t, BILLEDER AS b WHERE [noget] AND t.billednummer = b.nummer


Måske?
Avatar billede jensgram Nybegynder
09. marts 2005 - 17:13 #2
Ellers kunne du måske lave et dump på tabellernes struktur?
Avatar billede coderdk Praktikant
09. marts 2005 - 17:13 #3
SELECT t.*, b.url FROM tilbud AS t INNER JOIN billeder AS b ON t.billedid = b.billedid
Avatar billede mydream Nybegynder
09. marts 2005 - 17:21 #4
hæhæ, nu blev jeg lidt forvirret. Jeg tror lige jeg lægger de rigtige navne, så er det vist lettere:

Tabellen TILBUD indeholder OVERSKRIFT, BESKRIVELSE og NUMMER
Tabellen BILLEDER indeholder NUMMER og URL

Det er jo så de 2 numre der skal passe sammen.

Kan I hjælpe med en linje med de rette navne i?
Avatar billede coderdk Praktikant
09. marts 2005 - 17:23 #5
SELECT t.*, b.URL FROM TILBUD AS t INNER JOIN BILLEDER AS b ON t.NUMMER = b.NUMMER
Avatar billede coderdk Praktikant
09. marts 2005 - 17:24 #6
Eller bedre:

SELECT t.OVERSKRIFT, t.BESKRIVELSE, t.NUMMER, b.URL FROM TILBUD AS t INNER JOIN BILLEDER AS b ON t.NUMMER = b.NUMMER
Avatar billede mydream Nybegynder
09. marts 2005 - 17:59 #7
Nu har jeg skrevet:

$Test = mysql_query("SELECT t.Overskrift, t.Beskrivelse, t.Nummer, b.Billede FROM Tilbud AS t INNER JOIN Billeder148 AS b ON t.Nummer = b.Nummer");
echo " $Overskrift($Test) ";

men echoet virker ikke. Jeg skriver det nok forkert. Hvordan skal jeg udskrive en variabel?
Avatar billede coderdk Praktikant
09. marts 2005 - 18:02 #8
Øøøh, du skal connecte med mysql_connect(), vælge en database med mysql_select_db() og hive dem ud sådan:

// Connect først og vælg database, derefter dette:

$Test = mysql_query("SELECT t.Overskrift, t.Beskrivelse, t.Nummer, b.Billede FROM Tilbud AS t INNER JOIN Billeder148 AS b ON t.Nummer = b.Nummer");
// $Test er en resource
$row = mysql_fetch_assoc( $Test );
// $row indeholder nu en række (jeg antager at der *ER* en)
echo " $row[Overskrift] ";
Avatar billede mydream Nybegynder
09. marts 2005 - 18:09 #9
Perfekt.
Jeg er helt spritny til php, så den store forståelse af hvorfor du bruger t.Overskrift og INNERJOIN har jeg ikke endnu. Jeg håber det kommer. :)

Tak for hjælpen
Avatar billede coderdk Praktikant
09. marts 2005 - 18:31 #10
:) så lidt, du kan læse lidt mere om SQL her: http://www.w3schools.com/sql/default.asp
Avatar billede -thomas- Nybegynder
09. marts 2005 - 18:37 #11
Eller lidt kortere:

SELECT t.*, b.* FROM Tilbud t NATURAL JOIN Billeder b
Avatar billede -thomas- Nybegynder
09. marts 2005 - 18:38 #12
Skulle være:

SELECT * FROM Tilbud NATURAL JOIN Billeder
Avatar billede coderdk Praktikant
09. marts 2005 - 18:40 #13
Tror også man kan bruge:

SELECT * FROM Tilbud INNER JOIN Billeder USING (Nummer)

:) hhehhe
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