Gå til innhold

[Løst] DESC fungerer ikke etter oppgradering Mysql


Anbefalte innlegg

Etter å ha oppgradert Ubuntu fra 6.10 til 7.04 fungerer alt på hjemmesiden som det skal bortsett fra resultatsortering av Mysql-spørringer. Alle resultater som tidligere ble sortert i synkende rekkefølge blir nå sortert stigende.

 

PHP-koden på siden er ikke endret noe.

Har brukt koden under for å hente ut data gjennom en while-løkke:

$nyhet = mysql_query("SELECT * FROM `forside` WHERE slett=0 ORDER BY 'id' DESC LIMIT $rad, 1");

Men nå sorteres alt i stigende rekkefølge uansett. Ingen forskjell om jeg bytter DESC til ASC.

 

Mysqlversjon: 5.0.38-Ubuntu_0ubuntu1-log

Apache: Apache/2.2.3 (Ubuntu)

PHP: PHP/5.2.1

 

Noen tips til hva som kan ha skjedd?

Endret av RPA
Lenke til kommentar
Videoannonse
Annonse

Dropp ' ' og ` ` rundt kolonnenavnene i spørringen, og se om det blir bedre. Sånne tegn trengs ikke rundt kolonnenavnene.

 

Jeg skjønner ikke hvorfor folk bruker de tegnene hele tiden. De trengs kun av og til når man er så dum og velger kolonnenavn som er lik funksjoner eller språk-syntaksen (f.eks i enkelte tilfeller av date). Da er det bedre å velge et annet kolonnenavn.

Endret av endrebjorsvik
Lenke til kommentar
$nyhet = mysql_query("SELECT * FROM `forside` WHERE slett=0 ORDER BY 'id' DESC LIMIT $rad, 1");

Noen tips til hva som kan ha skjedd?

9474312[/snapback]

For det første, aner ikke. For det andre, sett deg ned og lær deg i det minste LITT om databaser før du skader deg selv :) Dette er intet mindre enn misbruk av databaser, det du SKAL gjøre er å hente ut samtlige nyheter som du skal presentere i ÉN spørring, og så loope gjennom resultatsettet i PHP.

Lenke til kommentar
Dropp ' ' og ` ` rundt kolonnenavnene i spørringen, og se om det blir bedre. Sånne tegn trengs ikke rundt kolonnenavnene.

 

Jeg skjønner ikke hvorfor folk bruker de tegnene hele tiden. De trengs kun av og til når man er så dum og velger kolonnenavn som er lik funksjoner eller språk-syntaksen (f.eks i enkelte tilfeller av date). Da er det bedre å velge et annet kolonnenavn.

9474819[/snapback]

Dette fikset problemet ja. Takk! Grunnen til at jeg har brukt disse tegnene har vært at koden en gang i tiden har vært hentet fra en gammel PHP eller Mysql-manual. Da denne virket har jeg brukt samme opplegget i sikkert nærmere 5-6år kanskje.

 

 

For det første, aner ikke. For det andre, sett deg ned og lær deg i det minste LITT om databaser før du skader deg selv :) Dette er intet mindre enn misbruk av databaser, det du SKAL gjøre er å hente ut samtlige nyheter som du skal presentere i ÉN spørring, og så loope gjennom resultatsettet i PHP.

9475979[/snapback]

Som sagt har denne koden vært brukt de 5-6 siste årene og jeg har aldri tenkt så mye på det ettersom denne siden nesten aldri har blitt særlig oppdatert. Har i lengre tid planlagt å skrive om koden til siden i en mer objektorientert form, men har ennå ikke tatt meg tid til å forandre for mye.

Men skal se på dette utover høsten når jeg får tid. :)

 

Syntes bare det var så rart at en oppgradering skulle gjøre at dette ikke fungerte.

Lenke til kommentar
Som sagt har denne koden vært brukt de 5-6 siste årene og jeg har aldri tenkt så mye på det ettersom denne siden nesten aldri har blitt særlig oppdatert. Har i lengre tid planlagt å skrive om koden til siden i en mer objektorientert form, men har ennå ikke tatt meg tid til å forandre for mye.

9479071[/snapback]

Litt pirk bare: Det jeg poengterte var ikke at det burde være objektorientert, snarere tvert om. Jeg mente at det skulle være settorientert. Objektorientert tankegang finner du i programmeringsspråk, mens de aller fleste databaseservere fortsatt trives best med settorientert tankegang.

Lenke til kommentar

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