Gå til innhold

[løst]Sjekke forskjellige ID'er


Anbefalte innlegg

Jeg lurer på hvordan jeg kan sammenligne to forskjellige id'er; en $_SESSION['$bID'] og en vanlig $ID som blir hentet fra en database.

 

Jeg vil at dersom disse to ikke stemmer(er like) at brukeren blir kastet tilbake til den siden brukeren kom fra. Eller at dersom disse to ID'ene er like får brukeren fortsette.

Endret av Palme
Lenke til kommentar
Videoannonse
Annonse

Du har skrevet en strict comparison istedenfor en vanlig loose, prøver du å si at det er mer riktig?

 

Edit: Det å kopiere innholdet var jammen et tragisk forsøk på å gjøre to linjer med kode mer ryddig.

Endret av Jonas
Lenke til kommentar
Du har skrevet en strict comparison istedenfor en vanlig loose, prøver du å si at det er mer riktig?

 

Ja, i dette tilfellet vil jeg si at det er mer riktig og sjekke om det er samme type.

 

jeg skrev den ekstra linjen med kode, for at det skal være mulig og bruke ID'en som er satt med session, igjen i scriptet, uten å måtte skrive $_SESSION['$bid]; gjennom hele.

Lenke til kommentar

Type comparison i dette tilfellet gjør INGEN TING mer enn hva vanlig gjør. Kan samtidig si at kode ikke blir i nærheten av ryddigere dersom du kopierer innholdet til en variabel med kortere navn - tvert imot. Kopiere du variabelinnholdet er det nesten implisert at det er en grunn til det, f.eks. dersom det skal fungerer som et buffer, men når alt du er ute etter er kortere variabelnavn så skaper det bare forvirring.

 

Du sa til å begynne med at Palme's kode var direkte feil, men det er hva som er feil.

Lenke til kommentar

Haha, djeezes. Jeg støtter Jonas 100% her - det er totalt meningsløst å korrigere koden til strict comparison og å kopiere variabelen til en annen variabel. Det er greit å lage en referanse til en session-variabel hvis man skal bruke variabelen mange flere ganger gjennom scriptet og man ikke gidder å bruke hele variabelnavnet - i alle andre tilfeller blir det bare mer unødvendig kode og ressursbruk. KISS.

 

Til trådstarter: Det er vanskelig å hjelpe deg uten å se hvordan du setter session-variabelen $bid. Og det er riktig som du gjør, det krever ikke mer enn if($var1 != $var2) { header(...); } for å oppnå målet ditt. Hva er problemet egentlig? :p

 

Edit: Så at problemet var løst nå. Never mind. :p

Endret av Lokaltog
Lenke til kommentar

Selv om jeg forsåvidt er enig så er ikke identical comparison helt meningsløst. Identical vs. equal comparison er opphav til en hel del merkelige ting. Ta f.eks følgende:

  'false' == true  => true
 'false' == false => false
 'false' == 0	 => true
  false  == 0	 => true

Altså, strengen false kan både være true og 0 alt etter som hva man sammenligner med. Det gjelder forøvrig stort sett alle andre strenger også. Uannsett, det er langt fra logisk at det er slik, og faktisk litt forvirrende til tider. Identical comparison rydder opp i slikt og gjør at man lett kan se hva resultatet av en sammenligning vil være (gitt at man kjenner verdiene til innvolverte variabler). Dette enkler debugging. Selv om det er lite sannsynliget kunne det i dette tilfellet vært slik at man er offer for denne type ulogiske greier. Derfor er det ikke bare å riste oppgitt på hodet og mene at det er totalt unødvendig å utføre identical comparison. Det vil tross alt ikke medføre noen skade/problemer, bare i enkelte tilfeller en mer logisk sammenligning.

Lenke til kommentar
Ser poenget ditt, Ernie. Det jeg reagerte mest på var ordlyden i innlegget til Famen:
Det er faktisk feil: *korrigere til strict/identical comparison*

 

hehe :)

 

Var kanskje litt streng, men det er slik jeg er blitt lært og sammenligne :)

 

unnskyld til trådstarter hvis du tok deg nær av det jeg sa, jeg mener bare selv at det blir (litt) mer riktig og bruke strict comparison.

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