Enctype multitype/formdata
Kilian
- html
0 Rolf
Hallo
Ein Frage zum Enctype bei Formularen.
Folgende Aufgabenstellung soll innerhalb eines Formulars realisiert werden.
1. Upload einer Datei, d.h folgender Tag. <FORM action="UploadScript4.asp" method="post" enctype="multipart/form-data" > ist von Nöten
2. Eingabe von Dokumentenkennwerten
Fuer die Eingabe der Dokumentenkennwerte darf der enctype nicht auf multipart/form-data
stehen, da sonst nicht der Text im Eingabefeld uebertragen wird sondern der Server
eine Datei erwartet und deshalb eine Fehlermeldung ausgibt.
Frage: Wie kann ich realisieren, daß beide Formulartypen durch einen Submit button
gekoppelt werden können, um ihre Daten in einen Datensatz zu schreiben.
Vielen Dank fuer die Hilfe bei der Problemlösung
Kilian
Frage: Wie kann ich realisieren, daß beide Formulartypen durch einen Submit button
gekoppelt werden können, um ihre Daten in einen Datensatz zu schreiben.Vielen Dank fuer die Hilfe bei der Problemlösung
Kilian
Kilian grüß Dich,
also ich hab so ein Teil auch grad am Wickel und möchte Dir mal meine Lösung hier posten. Das ist möglicherweise nicht direkt eine Antwort auf Deine Frage weil: mit ASP hab ich mich noch nicht beschäftigt... aber schau es Dir einfach mal an. Mit diesem Form+Script geht unter der Verw. des CGI.PM beides, also Text und Image auf den f* Server hochzuladen ;-)
Dein Fast - Namensvetter (siehe eMail), Rolf
---schnipp das Testform--->
<form action=/cgi/testcgi.pl method=post enctype="multipart/form-data">
Ein Image zum Server schicken:
<input type=file name='file_name'>
Einen Text zum Server schicken:
<input type=text name='eingabe'>
<input type=submit value='Aufi gehts trallala'>
</form>
<---schnapp---<
---schnipp das Testscript "testcgi.pl"--->
use CGI qw/:standard/;
$CGI::POST_MAX=1024 * 25000;
$file_name = param('file_name');
$eingabe = param('eingabe');
$upfile = substr($file_name, rindex($file_name, "\")+1);
$ext = substr($upfile, rindex($upfile,".")+1);
if($file_name eq ""){
&raus;
}
print header();
print "<p>Texteingabe: $eingabe";
print "<p>Zum Hochladen wurde die folgende Datei ausgewählt: <br>$file_name";
print "<p>Der Name der hochgeladenen Datei: $upfile";
print "<p>Die Dateierweiterung ist <b>$ext</b>";
open (IMG,">/temp/$upfile");
binmode IMG;
while (read($file_name, $buffer, 1024000)) {
print IMG $buffer;
}
close (IMG);
open (TXT, ">/temp/eingabe.txt");
print TXT $eingabe;
close (TXT);
sub raus {
print "Content-type: text/html\n\n";
print "<h3>Fehlerhafte Eingabe!</h3>
<p>Bitte Backbutton betätigen und ein Bildchen auswählen zum Hochladen\n"
exit 0;
}
<---schnapp---<