2017-09-19 13 views
0

Classic ASPとJmailを使用してファイルをアップロードしてメールで送信する方法を知りたい場合、HTML type = fileを使用してファイルを選択します。Jmail Classic ASPアップロードファイル

+0

ここにコードを追加できますか?あなたが直面した問題をお知らせください。 –

答えて

0

ここでは、ファイルのアップロードと送信メールへの添付ファイルの2つがあります。

サードパーティアップロードコンポーネントが必要になることがあります。多くのWindowsホスティング企業では、デモンストレーションに使用できる「Persits」スイートのASPコンポーネントが用意されています。 これはあなた自身のサーバーですか、共有ホスティングですか?共有ホスティングには、実際にできることを含めることがあります。最大ファイルサイズ、ファイルの種類など

サンプルコードはあなたに役立つはずですが、 'somecomponent'ビットは明らかにあなたが使用するものとインラインである必要があることに注意してください。

アップロード - あなたが一の以上の添付ファイルを1メールを送ってみましょうアタッチメント
<% 「サンプル・ファイルのフォームEmail.asp 」でメールを送信します。

'Create upload form 
Dim Form: Set Form = Server.CreateObject("SomeComponent.ASPForm") 

'Do not upload data greater than 1MB. 
Form.SizeLimit = 100*1024 

Const fscompleted = 0 

If Form.State = fscompleted Then 'completed 
    ProcessForm 
End If 


Sub ProcessForm 
    Dim eFrom, eTo, Subject, Message 

    'get source form fields - From, To, Subject and Message 
    eFrom = Form("From") 
    eTo = Form("To") 
    Subject = Form("Subject") 
    Message = Form("Message") 

    Dim objNewMail, File, FileName, FS, TempFolder 

    Set FS = CreateObject("Scripting.FileSystemObject") 
    'Get temporary folder 
    TempFolder = FS.GetSpecialFolder(2) & "\emailtemp" 

    'Create a new email message 
    Set objNewMail = CreateObject("CDONTS.NewMail") 
    Const CdoMailFormatMime = 0 
    objNewMail.MailFormat = CdoMailFormatMime 
    'Save source files to temporary folder 
    'Add these files to the new e-mail 
    For Each File In Form.Files 
    'If source file is specified. 
    If Len(File.FileName) > 0 Then 
     FileName = TempFolder & "\" & File.FileName 

     File.SaveAs FileName 

     objNewMail.AttachFile FileName 
    End If 
    Next 

    'Send the new email 
    objNewMail.Send eFrom, eTo, Subject, Message 

    'delete temporary files 
    For Each File In Form.Files 
    If Len(File.FileName) > 0 Then 
     FileName = TempFolder & "\" & File.FileName 
     FS.DeleteFile FileName 
    End If 
    Next 
End Sub 

%> 
<br>Sample For <A Href=http://www.motobit.com>HugeASP upload</A> 
<br> Let's you send one an email with one or more attachments. 
<br> File size limit Is <%=Form.SizeLimit%> B (<%=Form.SizeLimit \ 1024 %>kB). 
<Table Border=0> 
<form method="POST" ENCTYPE="multipart/form-data"> 
    <tr><td> From : </td><td><input Name=From Size=50></td></tr> 

    <tr><td> To : </td><td><input Name=To Size=50></td></tr> 

    <tr><td> Subject : </td><td><input Name=Subject Size=80></td></tr> 

    <tr><td ColSpan=2> Message: 
    <br><TextArea Name=Message Cols=76 Rows=10></TextArea> 
    </td></tr> 

    <tr><td ColSpan=2>E-Mail Attachments: 
    <Div ID=files> 
     Attachment 1 : <input type="file" name="File1"> 
    </Div> 
    <Input Type=Button Value="Add a file" OnClick=return(Expand()) 
    Style="border=0;background=yellow;cursor:hand"> 
    </td></tr> 

    <tr><td ColSpan=2 Align=Right> 
    <input Name=SubmitButton Value="Send email >>" Type=Submit></td></tr> 
    </Form> 
</Table> 

<Script> 
//Script To add a attachment file field 
var nfiles = 1; 
Function Expand(){ 
    nfiles++ 
    var adh = '<BR> Attachment '+nfiles+' : <input type="file" 
name="File'+nfiles+'">'; 
    files.insertAdjacentHTML('BeforeEnd',adh); 
    return false; 
} 
</Script> 
+0

ありがとう、私はそれらのコードを実装し、私たち自身のサーバー(我々は、Webサーバーとメールサーバーをホストする)でそれらをテストしようとします。 – alvahui2017

+0

OPは彼がJmailを使っていると言っていましたが、とにかくCDONTSの使用を推奨しません。Windows Server 2003以降には含まれていません。 CDOSYSは現在のバージョンのデフォルトのメールコンポーネントです – John

関連する問題