[ sojic @ 12.07.2004. 18:28 ] @
Moje resenje:
SimplaDataSet.DataSet.CommandText:='select * from tabelu';
SimpleDataSet.Open;
while not SimpleDataSet.eof do
begin
Polje1.text:=SimpleDataSet.FieldByName('Polje1').asString;
Polje2.text:=SimpleDataSet.FieldByName('Polje2').asString;
Polje3.text:=SimpleDataSet.FieldByName('Polje3').asString;
Polje4.text:=SimpleDataSet.FieldByName('Polje4').asString;
Polje5.text:=SimpleDataSet.FieldByName('Polje5').asString;
end;


Kako da uprostim ovo? Kako da iz rekorda da izvadim Fields i da iste iskoristim kao ime objekta u Delphiu? Nesto u stilu:

while Not SimpleDataSet.Eof do
begin

// u php bi izgledalo ovako:

foreach($Fields as $Name=>$Value) {
$$Fields->Text:=$Valule;
}
end;

Nada se da sam jasan.
[ reiser @ 12.07.2004. 20:11 ] @
Mislis na ovo :

Code:

SimplaDataSet.DataSet.CommandText:='select * from tabelu';
SimpleDataSet.Open;
while not SimpleDataSet.eof do
  For C1 := 1 to 5 Do
    TEdit(FindComponent('Polje' + IntToStr(C1))).Text := SimpleDataSet.FieldByName('Polje' + IntToStr(C1)).AsString;


Dalje, mozes da stavis With SimpleDataSet...
[ sojic @ 12.07.2004. 20:48 ] @
Niste me dobro razumeli, a i ja nisam dobro pisao

Polje1, polje2 i tako dalje nisu polje1, polje2 nego nesto u stilu:

Ime.text:=FieldByname('Ime').asstring;
Prezime.text:=FieldByName('Prezime').asstring;
Adresa.text:=FieldbyName('Adresa').asstring;

Imam minimum 20 polja, da ne mora da pisem 20 ovakvih reda.

Radi se o popunivanje formulara iz mysql baze.
[ reiser @ 12.07.2004. 21:54 ] @
Pa onda postavi brojac od 1 do broj polja i samo dodeljuj vrednosti editbox-ovima.

Nesto kao ovo :

Code:

For C1 := 1 to SimpleDataSet.FieldCount Do
  TEdit(SimpleDataSet.Fields[C1]).Text := SimpleDataSet.Fields[C1];


Znaci, postavis brojac od 1 do FieldCount (nisam siguran bas da se ovako zove property), i zatim samo dodeljujes vrednosti EditBox-ovima (TEdit(SimpleDataSet.Fields[C1]) ti je ime jednog EditBox-a).
[ sojic @ 12.07.2004. 22:50 ] @
OK, hvala, mislim da to je to.