OOP While-løkke

Tags:    php

Kære udviklere,

Jeg sidder og hjælper en kammerat med at bygge et lille cms over hans portfolio-blog. Lige nu bygger jeg en klasse, som har til indhold af at hente informationer fra en tabel i databasen. Klassen skal indeholde flere unikke funktioner som blog kan genbruges til senere brug, ved at smide query strengen i en variabel, som bliver sendt op i funktionen.

Den henter også informationerne uden problemer, men kom ind i problemet med min while-løkke. Normalt opstiller jeg min while-løkke således:

Fold kodeboks ind/udPHP kode 


Men skulle gerne have min variabel $query et sted fra, og det har jeg ikke rigtig når jeg gør det som jeg gør.

Min klasse, DBConnect, ser således ud:
Fold kodeboks ind/udPHP kode 


Så langt er jeg kommet med mit kald til tabellen, og udskrivningen:
Fold kodeboks ind/udPHP kode 


Men mangler min variabel $query, som i kan se i min while-løkke. Håber at i forstår hvad jeg mener.



Indlæg senest redigeret d. 03.04.2012 15:12 af Bruger #16025
7 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 14 karma
Sorter efter stemmer Sorter efter dato
Hvad med at holde det til kun en måde at hente data på?
Det giver ingen mening at pakke MySQL interface ind i et objekt/klasse, når du ikke vil benytte det til at læse data.

Man bruger enten den ene eller den anden metode, ikke begge metoder. Det giver forvirring.

Fold kodeboks ind/udPHP kode 



og iøvrigt, se lige at få læst: http://www.webmaster-source.com/2011/07/25/php-to-deprecate-mysql-extension-in-favor-of-mysqli-and-pdo/



Indlæg senest redigeret d. 03.04.2012 16:34 af Bruger #10216
Så skal du da bare lave den?? :)

Fold kodeboks ind/udPHP kode 


Eller du kunne lave en metode i din klasse med samme formål

EDIT: Hvorfor åbner du, og lukke hele tiden PHP? Det er da lidt forvirrende :D



Indlæg senest redigeret d. 03.04.2012 15:18 af Bruger #10410
@Valdemar
1. Jeg kan ikke indskrive $query når den variabel er ugyldig. Den ligger ikke nogle steder. Jeg skal have den inde fra klassen, men ved ikke helt præcis hvordan. Det er det mit spørgsmål går ud på.

2. Grunden til at jeg åbner/lukker php tags hele tiden har været fordi at jeg har smidt det ind til en samlet kode efterhånden. Det bliver rettet til sidst, men det er ikke det som er vigtigst.

Det vigtige er at jeg får en variabel ind i min mysql_fetch_assoc(), men kan jeg ikke rigtig komme til.

Havde tænkt at jeg ville returnere den fra klassen, men det blev forvirrende.



Forstår ikke hvad du mener med at variablen er ugyldig? Hvis du kigger i min rettelse af din kode, deklarerer jeg variablen $query på linje 2



1. Han henter $query fra klassen. Se anden linie.

<?$query=$db->mysql_select("SELECT * FROM portfolio ORDER BY id DESC")?>

Umiddelbart ser det rigtigt ud.



Nåå, det havde jeg ikke set. Sorry. Men havde i forevejen smidt det ind sådan her:

Fold kodeboks ind/udPHP kode 


EDIT! Rettelse, dit eksempel virkede. Tusind tak for det :).



Indlæg senest redigeret d. 03.04.2012 16:01 af Bruger #16025
Tak for dit svar @Michael, jeg vil kigge på det :)



t