04. juni 2004 - 10:54Der er
10 kommentarer og 1 løsning
Switch case med object eller array
Hejsa,
Jeg har en side som jeg sidder og sysler med, men nu er jeg nået til noget vi alle nok kommer forbi... at some point or other.
På siden kan man oprette en ny bruger, under admin sektionen selvfølgelig. Det skal ikke være muligt at oprette en bruger med samme brugernavn, som en anden tidligere oprettet bruger, og der bliver stillet krav til at visse felter skal være udfyldt, og sådan noget standard tingel-tangel.
MEN de krav der bliver stillet, vil jeg jo gerne have tjekket før, der bliver sat noget ind databasen (MySQL), og de skal ikke tjekkes alle sammen i en stor if-sætning, fordi så får admin en besked tilbage ala "Der er noget galt", og jeg vil gerne have at det er lidt mere udspecificeret end det.
SÅ jeg har prøvet med denne form: \/
>--------[PHP]-----------< if($name == "" || $surname == "") { print "Fejl: Der mangler navn eller efternavn"; } else { if($login == "" || $pass == "") { print "Fejl: Der mangler brugernavn eller kodeord"; } else { MySQL = Prop ting i databasen } } >-----[SLUT]-----<
DET er lidt kluntet, jeg kunne egentligt godt tænke mig at det blev tjekket med en Switch-Case-sætning istedet for det der IF-Helvede, som jeg viste herover..
MEN Switch-Case-sætninger kan åbenbart kun "vurdere" på en variabel af gangen, så før jeg bruger den sætning propper jeg lige alle mine ting ind i EN variabel... fint nok men HVORDAN???!?!?!?!
Jeg har prøvet med et array, og det er måske fint nok, men hvordan siger jeg så at PHP skal læse lige en bestemt "del" af array'et?
Jeg prøvede at lave det til objecter istedet for, men jeg ved ikek hvordan man gør det....
Det er så meget lettere med MySQL_Fetch_Object.. Det kan man bare sige:
$Databasen_hentning->name
også får man hvad der står på den række i databasen...
>----[Spørgsmålet]-----< Hvordan henter man specifikke "ting"/"dele" af et array ud igen?
Eller
Hvordan definere man en variabel til at indholde objekter? >-----[SLUT]------<
det virker alt forbesværligt at proppe det hele ind i en variabel bare for at få det ind i en switch, lige i dit tilfælde vil det være langt at foretrække at benytte if/else
Jeg har selvfølgelig lært lidt =) ... men det er bare ærgeligt at lave så meget arbejde for at finde en anden løsning, og så viser det sig at være den første løsning der er den bedste...
if(empty($error)){ // Skriv til database } else echo $error; }
Synes godt om
Ny brugerNybegynder
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.