2014-09-18 5 views
-1

У меня есть код для моей php-формы, который мне нравится. Я попытался интегрировать, с несколькими учебниками в Интернете, некоторый код для загрузки файла. Но никакого успеха! Нужна помощь! Вот код я использую ... TksЗагрузить файл с php-формой

<?php 

if (isset($_POST['email'])) { 

    // EDIT THE 2 LINES BELOW AS REQUIRED 

    $email_to = "[email protected]"; 
    $email_subject = "Message from website"; 
    function died($error) 
    { 

     // your error code can go here 

     echo "We are very sorry, but there were error(s) found with the form you submitted. "; 
     echo "These errors appear below.<br /><br />"; 
     echo $error . "<br /><br />"; 
     echo "Please go back and fix these errors.<br /><br />"; 
     die(); 
    } 

    // validation expected data exists 

    if (!isset($_POST['first_name']) || !isset($_POST['email']) || !isset($_POST['telephone']) || !isset($_POST['comments'])) { 
     died('We are sorry, but there appears to be a problem with the form you submitted.'); 
    } 

    $first_name = $_POST['first_name']; // required 
    $email_from = $_POST['email']; // required 
    $telephone = $_POST['telephone']; // not required 
    $comments = $_POST['comments']; // required 
    $error_message = ""; 
    $email_exp = '/^[A-Za-z0-9._%-][email protected][A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/'; 
    if (!preg_match($email_exp, $email_from)) { 
     $error_message.= 'The Email Address you entered does not appear to be valid.<br />'; 
    } 

    $string_exp = "/^[A-Za-z .'-]+$/"; 
    if (!preg_match($string_exp, $first_name)) { 
     $error_message.= 'The First Name you entered does not appear to be valid.<br />'; 
    } 

    if (strlen($comments) < 2) { 
     $error_message.= 'The Comments you entered do not appear to be valid.<br />'; 
    } 

    if (strlen($error_message) > 0) { 
     died($error_message); 
    } 

    $email_message = "Form details below.\n\n"; 
    function clean_string($string) 
    { 
     $bad = array(
      "content-type", 
      "bcc:", 
      "to:", 
      "cc:", 
      "href" 
     ); 
     return str_replace($bad, "", $string); 
    } 

    $email_message.= "First Name: " . clean_string($first_name) . "\n"; 
    $email_message.= "Email: " . clean_string($email_from) . "\n"; 
    $email_message.= "Telephone: " . clean_string($telephone) . "\n"; 
    $email_message.= "Comments: " . clean_string($comments) . "\n"; 

    // create email headers 

    $headers = 'From: ' . $email_from . "\r\n" . 'Reply-To: ' . $email_from . "\r\n" . 'X-Mailer: PHP/' . phpversion(); 
    @mail($email_to, $email_subject, $email_message, $headers); 
?> 



    <!-- include your own success html here --> 





    <?php 
} 

?> 
+2

где код загрузки, я не вижу его – meda

+0

Кроме того, код формы уместен. – Jasper

ответ

0

Вы имеете изменить HTML от чего-то вроде:

FROM: <form action="file.php" method="post"> 
TO: <form action="file.php" method="post" enctype="multipart/form-data"> 

Взгляните: http://www.w3schools.com/php/php_file_upload.asp увидеть, как загрузить файл. После загрузки вы можете прикрепить файл по электронной почте.

Взгляни: Send attachments with PHP Mail()?, чтобы увидеть, как прикрепить файл с помощью почты()

+0

Это очень полезно. Он загружает мои файлы в папку для загрузки, но в электронном письме нет вложения. Я не вижу никаких советов в «w3s» для этого. Я что-то упускаю? – Todok

+0

Я добавил ссылку в ответ ... Взгляните ..;) – Fernando

0

Вашего вопроса спрашивает о загрузке файла, но ваш код относится только к доставке сообщений с помощью PHP. Вот некоторые основные PHP код для загрузки файла:

$target_path = "uploads/"; 

$target_path = $target_path . basename($_FILES['uploadedfile']['name']); 

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { 
    echo "The file ". basename($_FILES['uploadedfile']['name']). 
    " has been uploaded"; 
} else{ 
    echo "There was an error uploading the file, please try again!"; 
} 

Вот основной учебник вокруг загрузки файла с помощью PHP, что вы могли бы оказаться полезными: Tutorial