procedure TForm1.Button2Click(Sender: TObject);
type
TPostEntry =
record
laufendenummer : Integer;
firma :
String[255];
ansprechpartner :
String[255];
c_telefon :
String;
end;
TPostEntries =
Array of TPostEntry;
var cNeuPfad :
string;
cFile :
string;
c_inhalt :
string;
n_FileHandle : integer;
Posts : TPostEntries;
idAuthor :
String;
//zum Zwischenspeichern der Verfasser-ID
query : PChar;
_myCon : PMySQL;
_myRes : PMySQL_Res;
//hier wird der gesamte Ergebnissatz gespeichert
_mySubRes : PMySQL_Res;
//benötigt, um Autor zu ermmitteln
_myRow : PMySQL_Row;
//enthält den aktuellen Datensatz
_mySubRow : PMySQL_Row;
//benötigt, um Autor zu ermmitteln
i : Integer;
host : PChar;
user : PChar;
pass : PChar;
db : PChar;
_myCont : PMySQL;
begin
//---(verbindung hergestellen)
host := '
localhost';
user := '
root';
pass := '
';
db := '
bewerbung';
_myCont := mysql_init(
nil);
if mysql_real_connect(_myCont, host, user, pass,
db, 3306,
nil, 0)
=
nil then
begin
// ShowMessage('verbung fehlgerschlagen');
end;
// Showmessage('verbunden');
query := '
SELECT * FROM adressen';
mysql_real_query(_myCont,
query, Length(
query));
_myRes := mysql_store_result(_myCont);
//alle Datensätze vom Server anfordern
if _myRes =
nil then
begin
ShowMessage('
Es konnten keine Datensätze zurückgebenen werden. Ursache: ' + mysql_error(_myCont));
Exit;
end;
SetLength(Posts, mysql_num_rows(_myRes));
//Posts-Array-Größe auf Anzahl der Datensätze setzen
for i := 0
to High(Posts)
do
begin
_myRow := mysql_fetch_row(_myRes);
//Datensatz abholen
Posts[i].laufendenummer := inttostr(_myRow[0]);
//ID ist erstes Feld im Datensatz
Posts[i].firma := _myRow[1];
//Zeitpunkt ist zweites Feld
Posts[i].telefonnummer := _myRow[2];
//Text ist drittest Feld
query := PChar('
SELECT name FROM users WHERE id=' + idAuthor);
_mySubRes := mysql_store_result(_myCont);
_mySubRow := mysql_fetch_row(_mySubRes);
mysql_free_result(_mySubRes);
//Ergebnissatz löschen
ShowMessage(Posts[i].firma);
end;
mysql_free_result(_myRes);
//Ergebnissätze löschen
end;