Gå til innhold

feil i SQL settnig ?


Anbefalte innlegg

Skrevet

$q="SELECT * FROM linker WHERE kategori = $kat order by linkid";

 

tenkt at $kat = div

 

denne trodde jeg skulle hente alle poster som har div i feltet kategori og sortere det etter linkid

 

 

men da får jeg denne meldingen :

 

Could not execute query : SELECT * FROM linker WHERE kategori = div order by linkid.Unknown column 'div' in 'where clause'

 

Noen som veit hva som er feil her?

 

på forhånd takk

Videoannonse
Annonse
Skrevet

Jeg har brukt SQL en del. Men kan ikke påberope meg å være ùber-ekspert.

 

Hvis det er PHP du skriver det fra så ville jeg gjort det slik:

$q="SELECT * FROM linker WHERE kategori=`" . $kat . "` order by linkid";

 

Lykke til.

Skrevet (endret)

prøv '$kat' , er nesten sikker på at det er noe med noe ' eller " rundt den variabelen. Var borti den feilmeldingen tidligere idag, og om jeg husker rett var det noe sånt no.

Endret av fjotten
Skrevet

Rippet bare et ekspempel ut fra noe jeg har laget før:

 

$q = "SELECT * FROM produkter WHERE hovedkategori='" . $kid . "' ORDER BY 'kategori' ASC"

 

Gidde ikke å skrive om, men virker som du bør ha '-er rundt det som skal bli sortert (ORDER BY) i tillegg.

Skrevet
prøv '$kat' , er nesten sikker på at det er noe med noe ' eller " rundt den variabelen. Var borti den feilmeldingen tidligere idag, og om jeg husker rett var det noe sånt no.

takk

 

det funka, litt rart men jeg det funka på andre forsøket.... prøvde det før du foreslo men da funka det ikke jaja... nå er det toppers....

 

Noen som veit hvofor de må være sånn? er det fordi det er tekst felt og ikke "tall" felt ?

Skrevet

alle strenger i mysql må ha enten ' eller " rundt seg. akkurat som i php :)

 

hvis ikke du har med det, prøver mysql å tolke det som en eller annen konstant i form av et reserver keyword eller definert kolonnenavn.

Skrevet

laaknor, det er vel det jeg og kom frem til, husker noe sånt fra ASP og SQL

 

Thorbjørn:

Jeg hadde jo " rundt hele setningen hvis det er det du tenker på ?

Skrevet
laaknor, det er vel det jeg og kom frem til, husker noe sånt fra ASP og SQL

 

Thorbjørn:

Jeg hadde jo " rundt hele setningen hvis det er det du tenker på ?

prøv å ta mysql_query(SELECT blablabla);

 

den ytterste " "'en, er bare for å merke at "dette skal du kjøre inn i query'en"

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...