Irene Meier: Wer hat einen Lösungsvorschlag - habe Startschwierigkeiten!

Hallo!

Startschwierigkeiten:

Ich habe eine HTML-Seite in der mehrere Auswahlmöglichkeiten
vorhanden sind.
Wird eine davon gewählt, so soll der zugehörige Datensatz aus einer
Oracle-DB gelesen werden - und wieder in einer HTML-Seite angezeigt werden.

Wie fange ich sowas überhaupt an?

Vielen Dank!
Irene

  1. Hallo!

    Startschwierigkeiten:

    Ich habe eine HTML-Seite in der mehrere Auswahlmöglichkeiten
    vorhanden sind.
    Wird eine davon gewählt, so soll der zugehörige Datensatz aus einer
    Oracle-DB gelesen werden - und wieder in einer HTML-Seite angezeigt werden.

    Wie fange ich sowas überhaupt an?

    CGI, PHP, mod_perl, ASP(bah!), ...

    Vielen Dank!
    Irene

    Erster Ansatz in Perl als CGI-Script:

    #!/usr/bin/perl -w
    use strict;
    use DBI;
    use CGI qw(:all start_table end_table);
    use CGI::Carp qw(fatalsToBrowser);

    my $dbh=DBI->connect('dbi:Oracle:host','user',password') or die 'Connect failed';
    my $sth=$dbh->prepare('select * from table where xxx=?') or die 'Prepare failed';
    my $parameter=param('xxxvalue');
    die "Need Parameter 'xxxvalue'" unless defined $parameter;
    $sth->execute($parameter);

    print
      header(),
      start_html('Untitled Page'),
      h1('Your result'),
      start_table({-border=>1});

    while (my $ar=$sth->fetchrow_arrayref()) {
      print Tr(td($ar));
    }
    $sth->finish();

    print
      end_table(),
      end_html();

    Der Rest ist Fleißarbeit und Anpassen an Deine Bedürfnisse.

    *GAAAAANZ* *WICHTIG* !!!

    NIEMALS, NIE, NIE, NIE die CGI-Parameter direkt in ein SQL-Statement reinpasten oder gar CGI-Parameter als SQL-Statement benutzen. Damit kann jedes Script-Kiddie in Sekunden Deine Datenbank sabotieren. Immer die Parameter in $sth->execute() übergeben, und möglichst vorher noch auf gültige Werte überprüfen.

    Tux2000

  2. Hi,

    Wie fange ich sowas überhaupt an?

    Ich würde eine Lösung über PHP bevorzugen. Finde ich etwas einfacher als Perl, da etwas weniger kryptisch (aber das ist natürlich subjektiv). Gleich mit der Ausgabe von Daten aus einer Datenbank anzufangen ist ganz schön starker Tobak. Du könntest dir natürlich das Script meines Vorredners kopieren, aber ich bezweifel, das du das schön zum Laufen bekommst. Deshalb würde ich dir folgendes empfehlen:
    Kaufe dir das Buch "Jetzt lerne ich PHP4" von Matt Zandstra. Das ist erschienen bei Markt und Technik und ist eines der besten Anfängerbücher, die ich je zu einer Programmiersprache gelesen habe (du kannst es natürlich auch über Netz Ressourcen versuchen).

    In diesem Buch, oder diversten Tutorials, findest du auch Datenbankkapitel. Die sind zwar in der Regel auf MySQL bezogen, aber das ist kein Problem, weil die Prinzipien des Zugriffs auf die Datenbank gleich bleiben, egal welche Datenbank du ansprichst.

    Wenn du es geschafft hast, einen Fuß in die Tür zu kriegen und das Prinzip zu verstehen, geht der Rest eigentlich relativ "einfach".

    Dazu kommt außerdem, das es ja in der Regel nicht mit einer einfachen Ausgabe der Daten getan ist. Zumeist kommt ja noch irgendeine Suchfunktion dazu oder die Möglichkeit für den Besucher, sich durch die Datensätze durchzublättern. Das muß ja dann auch noch irgendwie realisiert werden.

    Grüße
    Ralf