grundsätzlich liegt das problem ähnlich wie bei köernie (s. beitrag weiter unten), aber eben nur ÄHNLICH
ich habe ein formular dessen inhalt via email an einen bestimmten (immer gleichen) empfänger geschickt werden soll.
die formularfelder sind gewöhnliche eingabefelder (input, select, textarea), deren wert ich mir ohne weiteres auf eine antwortseite rüberziehen kann und dort (CreateObject(„CDONTS.NewMail“)) das email erstelle und verschicke.
das problem: es gibt ein formularfeld über welches der benutzer (optional) auch files als attachement mitschicken kann.
um dem email attachements beizufügen, muß ich die files uploaden. dazu verwende ich den POSTING ACCEPTOR. wie gesagt sind die attachements aber optional, doch wenn man dem posting acceptor kein file übergibt kommt ein fehler (anstatt daß dieser idiot den upload ignorieren würde).
wie bekomme ich nun das problem in den griff? per konvention darf ich keine client-side-scripts verwenden…
um dem email attachements beizufügen, muß ich die files
uploaden. dazu verwende ich den POSTING ACCEPTOR. wie gesagt
sind die attachements aber optional, doch wenn man dem posting
acceptor kein file übergibt kommt ein fehler (anstatt daß
dieser idiot den upload ignorieren würde).
So auf Anhieb würde ich den POSTING ACCEPTOR (kenn das Ding nicht (kann auch kein ASP:smile:)) irgendwie einhüllen und diesem ein Serverskript davorstellen, dass nur dann den POSTING ACCEPTOR aktiviert, wenn dieser auch gebraucht wird.
So auf Anhieb würde ich den POSTING ACCEPTOR (kenn das Ding
nicht (kann auch kein ASP:smile:)) irgendwie einhüllen und diesem
ein Serverskript davorstellen, dass nur dann den POSTING
ACCEPTOR aktiviert, wenn dieser auch gebraucht wird.
ich kann dem Posting Acceptor kein script voranstellen (zumindest soweit ich weiß).
eine genau doku hab ich noch nicht gefunden (aber viele ungenaue…), aber ich glaube, daß er einfach auf das eingabefeld zugreift, daß vom typ „file“ ist und zwar beim drücken des submit buttons - d.h. ich habe keinen einfluß
ich kann dem Posting Acceptor kein script voranstellen
(zumindest soweit ich weiß).
Hast Du PHP auf Deinem Server laufen? Damit ginge es einfacher, das kann ich Dir dann auch erklären.
Versuch mal Dein Problem auch in dieser Newsgroup zu schildern, vielleicht wissen die weiter:
news://microsoft.public.site.posting-acceptor
eine genau doku hab ich noch nicht gefunden (aber viele
ungenaue…), aber ich glaube, daß er einfach auf das
eingabefeld zugreift, daß vom typ „file“ ist und zwar beim
drücken des submit buttons - d.h. ich habe keinen einfluß
Ok, dann versuch’s mal statt der HTTP-Methode POST die HTTP-Methode PUT, die ist eigentlich für File-upload besser geeignet als die POST-Methode. Einziger Nachteil: Es soll Browser (vor allem die, die noch nicht HTTP 1.1 können) da draussen geben, die PUT nicht verstehen. Wenn Du Dir sicher bist, dass das bei Dir nicht der Fall ist (Netscape, IE, Opera und Amaya können’s auf jeden Fall), dann ist das wohl eine Alternative.
Hast Du PHP auf Deinem Server laufen? Damit ginge es
einfacher, das kann ich Dir dann auch erklären.
nein
Ok, dann versuch’s mal statt der HTTP-Methode POST die
HTTP-Methode PUT, die ist eigentlich für File-upload besser
geeignet als die POST-Methode. Einziger Nachteil: Es soll
Browser (vor allem die, die noch nicht HTTP 1.1 können) da
draussen geben, die PUT nicht verstehen. Wenn Du Dir sicher
bist, dass das bei Dir nicht der Fall ist (Netscape, IE, Opera
und Amaya können’s auf jeden Fall), dann ist das wohl eine
Alternative.
seitens der browser (intranet) weiß ich daß ich mit http 1.1 kein problem habe aber mit dem proxy (1.0)
Ich gebe Dir ein paar Denkanstösse, die mir jetzt da noch einfallen
Gibt’s denn andere Programme, die den File-upload mit dem IIS (den benutzt Du wohl) realisieren? Vielleicht kann man sich sowas auch selber schreiben (ist aber unnütze Arbeit). Schon mal bei Microsoft nachgefragt, wie man diesen Fehler umgehen kann?
Was ist das denn überhaupt für ein Fehler? Stoppt der Dein Skript? Falls nur der Fehler auftritt und Dein Skrippt einfach weiterläuft kann man da ja vielleicht was drum rumbasteln (hört sich schon nach unsauberer Lösung an, irgendwie).
variable result (vom Typ Boolean)
result = ( FileUpload == geglückt )
if ( result == false ) {
Formular ohne Dateianhang senden
}
else {
Formular mit Dateianhang senden
}
ich kann halt ASP nicht, das ist mein Problem, deshalb hätte ich eigentlich gar nicht antworten sollen. Vermutlich geht sowas gar nicht.