Hallo,
ich benutze LabView 8.2 incl. Internet Toolkit. Als Web Server verwende ich den G WebServer.
Im Zusammenhang mit der CGI-Programmierung habe ich folgendes Problem:
Ich
möchte mit Hilfe eines HTML-Formulars (Code siehe unten) zwei Zahlen
sowie eine *.txt-Datei an ein CGI VI (cgi-test.vi) schicken. Dieses
soll dann die Summe der beiden Zahlen sowie den Inhalt der *.txt-Datei
als Ergebnis zurücksenden.
Der Code des HTML-Formulars sieht folgendermaßen aus:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><font size="5"><b>CGI-Test - addition of two numbers</b></font></p>
<hr>
<p>This form adds two numbers and displays the sum as well as the content of the uploaded *.txt-file.</p>
<form name="form1" method="post" action="/cgi-bin/cgi-test" enctype="multipart/form-data">
<p> Number 1
<input type="text" name="n1">
</p>
<p>Number 2
<input type="text" name="n2">
</p>
<p>
<input type="file" name="f1">
</p>
<p>
<input type="submit" name="submit" value="submit">
<input type="reset" name="reset" value="reset">
</p>
</form>
<p> </p>
</body>
</html>
Das
CGI VI wird beim Absenden des Formulars aufgerufen und die Daten werden
an das cgi-test.vi übermittelt. Theoretisch müsste dann das keyed array
in seine Einzelbestandteile zerlegt werden, so dass mit den einzelnen
Elementen des Arrays gearbeitet werden kann (d.h. Berechnung der Summe
der beiden Zahlen sowie Anzeige des Inhalts der *.txt-Datei). Als
Ergebnis erhalte ich jedoch folgendes:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Draft//EN">
<HTML>
<!-- Constructed with the G Web Server -->
<HEAD>
<TITLE>CGI-Test</TITLE>
</HEAD>
<BODY >
Summe:
0File content:
</BODY>
</HTML>
Aus
irgendeinem Grund lassen sich die drei übermittelten Daten (n1, n2, f1)
nicht aufschlüsseln bzw. nicht so voneinander trennen, dass damit
operiert werden kann.
Meine Fragen:
Wie kann ich erreichen, dass die drei übermittelten Daten getrennt voneinander ansprechbar sind?
Habe ich evtl. einen Fehler in meinem HTML-Formular?
Gibt es vi-Vorlagen, die sich mit dem Upload von Dateien in ein CGI VI beschäftigen?
Im Voraus schon mal vielen Dank für die Hilfe,
Ulrich
P.S.: Im Anhang befindet sich eine Abbildung des CGI VI