HTML-generierung mit ms access 97
Tichy
- datenbank
0 Rolf0 Rolf
0 Dirk Ruchatz
huhu,
was ist die beste methode html von access 97 aus zu generieren?
ich kenne mich mit xml zwar noch wenig aus, aber ich stelle mir vor, dass ich ein html mit variablen habe und ein parser, der in access integriert ist oder nur davon gesteuert wird dann das/die endgueltige html-file(s) inkl. der daten erstellt.
schoen waere es, wenn es mit access alleine geht, bei einer loesung mit z.b. perl muesste der benutzer dann perl installiert haben. c/c++ waere dann wieder praktischer.
kann jemand bestimmte perl-scripts empfehlen, bzw. gibt es schon leicht anpassbare c/c++ loesungen?
die loesung soll dafuer da sein z.b. woechentlich eine kleine preisliste im web upzudaten.
leider kommen sql-db, asp, oder server-seitige scripts nicht in frage.
bin fuer jeden tip sehr dankbar:)
cu, tichy
Hallo Tichy,
kann jemand bestimmte perl-scripts empfehlen, bzw. gibt es schon leicht anpassbare c/c++ loesungen?
wie wäre es mit diesem Beispiel (Perl liest eine MDB-Access-Tabelle)
---cut--->
use Win32::ODBC; # Modul einbinden
print "Content-Type: text/html\n\n" ;
print "
<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 3.2 Final//EN'>
<HTML>
<HEAD>
<TITLE>Adressen über ODBC</TITLE>
</HEAD>
<BODY bgcolor='white'>";
print "<h1>Privatadressen</h1><hr>";
$db = new Win32::ODBC('ADR') ; # Objekt anlegen
$db->Sql("
SELECT NAME, VORNAME, STRASSE, PLZ, ORT, TELEFON FROM adres
WHERE NAME like 'B%'
ORDER BY NAME
");
@FelderNamen = $db->FieldNames() ;
$spalten=$#FelderNamen+1 ;
print "<h3>Alle Namen mit 'B'</h3>";
print "<table border=1 cellspacing=0>\n";
print "<tr>\n";
for (@FelderNamen)
{
print "<td>", $_, "</td>\n"; # Die Feldüberschriften nicht vergessen
}
print "</tr>\n";
while ($db->FetchRow())
{
print "<tr>\n";
undef %Daten ;
%Daten = $db->DataHash();
for ($i = 0; $i < $spalten; $i++)
{
if ($Daten{$FelderNamen[$i]} gt '')
{
print "<td>", $Daten{$FelderNamen[$i]}, "</td>\n";
}
else
{
print "<td><font color='#ff8040'>Nicht Angegeben</font></td>\n";
}
}
print "</tr>\n";
}
print "</table>\n";
print "<hr>";
print "<h3>Alle Namen mit 'R'</h3>";
$db->Sql("
SELECT NAME, VORNAME, STRASSE, PLZ, ORT, TELEFON FROM adres
WHERE NAME like 'R%'
ORDER BY NAME
");
print "<table border=1 cellspacing=0>\n";
print "<tr>\n";
for (@FelderNamen)
{
print "<td>", $_, "</td>\n"; # Die Feldüberschriften nicht vergessen
}
print "</tr>\n";
while ($db->FetchRow())
{
print "<tr>\n";
undef %Daten ;
%Daten = $db->DataHash();
for ($i = 0; $i < $spalten; $i++)
{
if ($Daten{$FelderNamen[$i]} gt '')
{
print "<td>", $Daten{$FelderNamen[$i]}, "</td>\n";
}
else
{
print "<td><font color='#ff8040'>Nicht Angegeben</font></td>\n";
}
}
print "</tr>\n";
}
print "</table>\n";
$db->Close() ;
print "</BODY></HTML>";
<---cut---<
Quelle:
<a href=""></a>
Viele Grüße, Rolf
Sorry,
der Link... zu meiner Quelle:
http://www.perl-archiv.de/perl/index.shtml
Hier findest Du eine erstklassige Beschreibung wie mit Perl auf MDBs zugegriffen werden kann (nur lesen).
Viele Grüße, Rolf
Moin Tichy,
da Du ja scheinbar nur "statische" HTML's generieren und nicht online auf die Datenbank zugreifen willst, kannst Du in Access 97 einen Report erstellen und diesen dann über den Menupunkt "Datei exportieren / Als HTML speichern" in eine HTML-Datei exportieren.
Für das ganze "Drumherum", also das Layout und Kopf-/Fußzeilen, Hintergrundbild etc. kannst Du eine HTML-Vorlagendatei erstellen, in die Access dann die Daten einbindet.
Gruß
Dirk