webForumDet fria alternativet

tillträde endast egna inlägg

Databaser & SQL

34 svar · 1 065 visningar · startad av Trumpf · sida 2 av 2

Frågan, av Trumpf

Hej, Sitter och knåpar men är inte så där kunnig som alla andra här. Har ett inloggning system som fungerar fint. Men om jag vill att medlemen ska kunna lägga upp exempel egna annonser för fösäljning går jag bet. Har en databas som heter members där alla är registrerade. med id, namn osv...... Nu har jag skapat en tabell som heter annonser. Och där ska man kunna lägga upp egna anonnser. Om jag

Läs frågan i sin helhet →
Medlem sedan feb. 2004213 inlägg
#21

Du Peter hur kan det se ut? Jag får aldrig detta att fungera.
Det kan ju handla om flera hundra annonser från en person.

Medlem sedan dec. 20025 483 inlägg
#22

Antag följande innehåll i tabellerna members och annonser:

members
--------------
 id |  user  |
--------------
 1  | kalle  |
--------------
 2  | olle   |
--------------
 3  | arne   |
--------------

annonser
-------------------------------------------
 id | titel   | forfattare | inlagt_datum |
-------------------------------------------
 1  | annons1 |      1     |  2007-01-01  |
-------------------------------------------
 2  | annons2 |      2     |  2007-01-01  |
-------------------------------------------
 3  | annons3 |      2     |  2007-01-10  |
-------------------------------------------

Kalle har alltså en annons, Olle två annonser och Arne ingen annons.

Låt säga att du sparat den inloggades medlems-id i session("id") och att du vill hämta dennes alla annonser, då kan du använda

select titel
     , inlagt_datum
  from annonser
 where forfattare = session("id")
order
    by inlagt_datum desc

Sedan saknas det kanske några fält i de två tabellerna, t.ex. för- och efternamn i members, och ett fält med annonstext i annonser.

Medlem sedan feb. 2004213 inlägg
#23

Precis så vill jag att det ska fungera.
Har även för och efternamn, reggad, mail osv inlagt i medlem.
Att bli medlem fungerar som det ska.
Det problem jag har är att lägga in egna annonser samt få fram dom för besökarna.

Men ok. Nu ser jag hur det ska se ut. Jag får snickra till kvällen eller till helgern.
Jag återkommer:)

Medlem sedan dec. 20025 483 inlägg
#24

Gör så! :bire

Medlem sedan feb. 2004213 inlägg
#25

Jag har skrivit så här nu:
SQL = "select titel, inlagtdatum from annonser where medlem = session("id") order by inlagtdatum desc"

Observera att jag har ändrat forfattare till medlem istället.
Orsaken är att den som säljer är inte forfattare helt enkelt. Ändra inlagt_datum till inlagtdatum också.Tror du förstår Peter.

Men jag får felmeddelande nu:

Microsoft VBScript compilation error '800a0401'

Expected end of statement

/mina_annonser.asp, line 70

SQL = "select titel, inlagtdatum from annonser where medlem = session("id") order by inlagtdatum desc"
-----------------------------------------------------------------------^

Medlem sedan dec. 20025 483 inlägg
#26
SQL = "select titel, inlagtdatum from annonser where medlem = " & session("id") & " order by inlagtdatum desc"

Du får konkatenera in sessionsvariabeln.

Medlem sedan feb. 2004213 inlägg
#27

Fick det att fungera Peter:)

Jag tog fram
SQL = "SELECT * FROM annonser WHERE medlem = "& Session("id") &" ORDER BY inlagtdatum DESC"

Och då fungerade det. Samt jag loggade in med ett annat namn så kom annonsen inte fram. Ja, det fungerar......Snickrar vidare och jag återkommer:)

Medlem sedan feb. 2004213 inlägg
#28

Tack:) Fick lägga till vid select titel, inlagtdatum, pris osv.....då fungerade det!
Börjar förstå lite med det jag gör.

Medlem sedan dec. 20025 483 inlägg
#29

Strålers! :bire

Medlem sedan feb. 2004213 inlägg
#30

Om jag vill att besökarna ska se alla annonser och vem säljaren är.
Hur skriver jag sql då?

Säljaren ligger i:
members, id, username

annonser
id, medlem(vem members id nummer ligger) , forfattare,titel,beskrivning,pris,kaegori,inlagtdatum,såld

Medlem sedan feb. 2004213 inlägg
#31

Löste det trodde jag ja.

SQL = "select titel, inlagtdatum, forfattare, beskrivning, pris, kategori, såld from annonser where medlem = " & session("id") & " order by inlagtdatum desc"

Men detta ser man bara om man är inloggad.

Medlem sedan dec. 20025 483 inlägg
#32
select titel
     , inlagtdatum
     , username
     , beskrivning
     , pris
     , kategori
     , såld
  from members m
inner
  join annonser a
    on m.id = a.medlem
order
    by inlagtdatum desc

Vad är syftet med forfattare?

Medlem sedan feb. 2004213 inlägg
#33

aha ja.. Join.
Det ska jag använda för första gången nu. Har prövat förut men har aldrig fått kod att fungera.
Spännande:)

Forfattare är en kolumn där det står vem som har skrivit boken.
Titel och forfattare.

Medlem sedan feb. 2004213 inlägg
#34

Kör koden:

SQL = "select titel, inlagtdatum, medlem, beskrivning, pris, kategori, såld from members m inner join annonser a on m.id = a.medlem order by inlagtdatum desc"

Då fungerar det. Men jag får det inte riktigt rätt.

Den visar samma annnser om jag klickar på olika säljare.

Medlem sedan feb. 2004213 inlägg
#35

Det är löst
SQL = "select titel, forfattare, inlagtdatum, medlem, beskrivning, pris, kategori, såld from members m inner join annonser a on m.id = a.medlem where m.id=" & CLng(Request.QueryString("id")) & " order by inlagtdatum desc"

263 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)