Dynamiske paneler

Tags:    php mysql

Kære udviklere,

Nu hvor jeg er igang med at bygge mit eget personlige "cms" til eget brug, er jeg stødt på et problem.

Jeg skal have lavet nogle såkaldte "paneler" på siden, som kommer fra en database.

Jeg har bygget det op i min html, således:
Fold kodeboks ind/udPHP kode 


I min php ser det således ud
Fold kodeboks ind/udPHP kode 


Problemet ligger i at den dublikerer min data, hvis jeg har to "typer" der er ens.

I min tabel har jeg dette: Link

Jeg har med vilje lavet 2 "paneler" som ligger under typen "content". Problemet er at den øverste hvor der står "hello world" under titlen, ved "content", der bliver den udskrevet to gange med samme data istedet for at den tager det nye data og udskriver dette.

Nuværende resultat: Link

Er der nogle der kan finde fejlen? Jeg kan ikke. På forhånd tak.



5 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 6 karma
Sorter efter stemmer Sorter efter dato
Det vil aldrig virke, som du tror det virker! Du henter kun een række, og that's it.

I seneste stump deler du en tekststreng ud i et array.

Du kan måske løse det ved at skrive:
Fold kodeboks ind/udPHP kode 


Men uanset hvad du gør, skal du pille din database ud af den klasse. Din klasse (hvad end den hedder) skal ikke extend'e fra din database. Det bliver et helvede at holde styr på. Din (view) klasse skal have - når nu du ikke bruger MVC - din database klasse som input parameter i constructor på den klasse vi ser på. Derfra kan du så f.eks. benytte $this->db->query('....');



Indlæg senest redigeret d. 19.10.2012 18:33 af Bruger #10216
Nu sidder jeg ikke med PHP men ser da ud til du kun henter en enkelt række ud, men udskriver den antal-rækker gange:

Fold kodeboks ind/udPHP kode 


Du skal nok have alt det udenfor-while'n, men inden for if'en ind under whilen også samt, hente en ny række i hver iteration i whilen.




Det er lige det jeg tænkte. Normalt bruger jeg foreach i denne situation, men kunne ikke få det til at virke.

Det mærkelige er dog at det virker i en anden situation, hvor jeg skal udskrive alle styles der tilhører det valgte tema:

Fold kodeboks ind/udPHP kode 


Fold kodeboks ind/udPHP kode 


Det er netop dét der undrer mig.



Det vil aldrig virke, som du tror det virker! Du henter kun een række, og that's it.

I seneste stump deler du en tekststreng ud i et array.

Du kan måske løse det ved at skrive:
Fold kodeboks ind/udPHP kode 


Men uanset hvad du gør, skal du pille din database ud af den klasse. Din klasse (hvad end den hedder) skal ikke extend'e fra din database. Det bliver et helvede at holde styr på. Din (view) klasse skal have - når nu du ikke bruger MVC - din database klasse som input parameter i constructor på den klasse vi ser på. Derfra kan du så f.eks. benytte $this->db->query('....');


$this->speak->the_truth($this->man);





Indlæg senest redigeret d. 19.10.2012 18:37 af Bruger #17081
@Michael
Det virker, tusind tak! Og ja, jeg skal nok kigge på det du skriver :)



t