2011-08-03 2 views
0

私は連絡先を添付ファイルと一緒に使用しています(正常に動作しています)。この連絡先を添付ファイルに変換する方法を教えてください。私はどのようにこの添付ファイルのスクリプトworks.Iは、ウェブを試みたが、これはproblem.thisのために明確な答えは、私のスクリプト連絡先のフォームに添付ファイル(pdf、doc、xmlなど)を追加する方法

<form action="" enctype="multipart/form-data" method="post"> 

<label for="name">Name:</label><br/> 
<input type="text" id="name" name="name" /><br/> 

<label for="email">Email address:</label><br/> 
<input type="text" id="email" name="email" /><br/> 

<label for="topic">Subject:</label><br/> 
<input type="text" id="topic" name="topic" /><br/> 
<input type="hidden" name="MAX_FILE_SIZE" value="100000" /> 
<label>Upload a Menu:</label> 
<input type="file" name="file" size="20"><br> 


<label for="comments">Your comments:</label><br/> 
<textarea id="comments" name="comments" rows="5" cols="30"></textarea><br/> 

<button name="submit" type="submit">Send</button> 

</form> 
<?php 
if(isset($_POST['submit'])) 
{ 
// Pick up the form data and assign it to variables 
$name = $_POST['name']; 
$email = $_POST['email']; 
$topic = $_POST['topic']; 
$comments = $_POST['comments']; 

// Build the email (replace the address in the $to section with your own) 
$to = '[email protected]'; 
$subject = "Contact: $topic"; 
$message = "$name said: $comments"; 
$headers = "From: $email"; 

// Send the mail using PHPs mail() function 
mail($to, $subject, $message, $headers); 

// Redirect 
echo('<br> your mail has been send<br>'); 
} 
?> 

答えて

0

アップロードされたファイルを一時的な場所に保存されますがありません。そこから、ファイルを使用したい場所にコピーするか、永続的に保存することができます。すべてのファイル情報は実際に$_POSTの代わりに$_FILESスーパーグローバルにあります。

あなたの場合、ファイルが一時的に保存されるパスは$_FILES['file']['tmp_name']にあります。

the manual hereを参照してください。

しかし、ファイルを電子メールに添付することは別の獣です。 mail()を自分で使うのではなく、PHPメーラークラスを使用することをお勧めします。例えば、PHPMailerを見てください。

関連する問題