Sebastian: CGI

Hallo Mittlerweile programmiere ich mit einem Freund zusammen selber HP‚s für Firmen, im Moment für einen Computerladen. Da ich zum ersten mal CGI benutzen muß, bin ich ein wenig verunsichert und finde einfach nicht die richtige Lösung für mein Problem. Ich habe ein Formular erstellt, wo man sich über die Preise informieren soll. Man stellt sich sozusagen seinen persönlichen Wunsch-PC zusammen. Das Formular selber bereitet mir dank der Selfhtml keine weiteren Schwierigkeiten, doch suche ich nach einer Lösung wie ich per CGI den Preis für genau den aus dem Formular ausgewählten Komponenten des Wunsch-PC‚s zurückgeben kann und der Kunde dann den Preis im Browser angezeigt bekommt. Wie das theoretisch funktioniert ist mir klar aber praktisch habe ich keinen schimmer. Ich denke mir das man eine Datenbank braucht in der die Preise für alle Komponenten, die man im Formular auswählen kann enthalten sind. Diese Datenbank muß leicht aktualisierbar sein, da sich die Preise bekanntlich sehr häufig ändern. Das Script muß dann die Preise der Komponente ermitteln die durch den Anwender, also durch das Formular ermittelt werden, zusammenrechnen und später zurückgeben und im Browser anzeigen. Gibt es für mein Problem ein Script? Wenn, wie binde ich es ein und was muß ich ändern? Ich habe schon allerlei Seiten abgesucht auf denen es CGI-Scripte gibt, allerdings bin ich nicht fündig geworden. Ich wäre Ihnen sehr dankbar, wenn Sie mir weiterhelfen könnten. Das größte Problem ist, daß ich Perl kein bisschen berherrsche und auch keine andere Programmiersprache kann. Demnächst nur Turbo Pascal in Informatik an der Schule, aber das ist noch lange hin, weil wir gerade erst damit anfangen und ich die Homepage bis nächste Woche fertig haben muß. Vielen Dank im voraus...

Mit freundlichen Grüßen:

Sebastian Christmann (Sebastian.Christmann@t-online.de)

  1. Hallo Sebastian,

    doch suche ich nach einer Lösung wie ich per CGI den Preis für genau den aus dem Formular ausgewählten Komponenten des Wunsch-PC‚s zurückgeben kann und der Kunde dann den Preis im Browser angezeigt bekommt.

    Dazu brauchst Du eigentlich noch kein CGI - um dem Anwender waehrend des Zusammenstellens den aktuellen Preis anzuzeigen, ist es eigentlich schneller und eleganter, JavaScript zu benutzen. Denn damit kann bei jedem Anklicken einer Komponente der aktuelle Summenpreis sofort errechnet und irgendwo (z.B. in einem anderen Framefenster in einem Formularfeld) angezeigt werden. Im Formular selbst kannst Du die Preise der Komponenten zum Beispiel in versteckten Formularfeldern notieren, um mit JavaScript bequem darauf zuzugreifen. Anhand der angeklickten Elemente kannst Du feststellen, welche der versteckten Felder zu addieren sind. Um eine Summe zu ermitteln, musst Du die versteckten Formularfelder auslesen, dabei die JavaScript-Funktion eval() auf den Wert anwenden und dann einfach alles addieren, also etwa: Summe = eval(document.Formular.versteckt1.value) + eval(document.Formular.versteckt4.value) + eval(document.Formular.versteckt5.value) + eval(document.Formular.versteckt12.value);

    Innerhalb eines CGI-Scripts ist es natuerlich genauso moeglich, solche Formularwerte zu addieren. In Perl ist das sogar extrem einfach, weil man dort keinerlei Typenumwandlung anaolg zu eval() braucht. Du kannst einfach alle Variablen, in denen relvante Daten gespeichert sind, durch + addieren.

    Viele Gruesse   Stefan Muenz