2013-05-19 61 views
0

我有一个PHP窗体,我试图从它发送一个图像作为附件。我已经在我的代码中修复了几件事。发送图像附件

  1. 我不知道这是否会送形象(因为我有一些问题吧)
  2. 的问题是,没有在页面甚至显示(当我下面的脚本是RAN)时我打开它在服务器上为index.php甚至没有按钮

下面是代码:

<?php 

include_once("functions.php"); 
// Process 
$action = isset($_POST["action"]) ? $_POST["action"] : ""; 
if (empty($action)) 
{ 
    // Send back the contact form HTML 
    $output = "<form action='#' style='display:none'> 
       <input type='file' id='image' name='image' maxlength=50>"; 
} 

require("class.phpmailer.php"); 
$Email_to = "[email protected]"; // the one that recieves the email 
$email_from = "[email protected]"; 
$dir = "uploads/$filename"; 
chmod("uploads",0777); 


function uploadImage($image) 
{ 
    if ((($_FILES["image"]["type"] == "image/gif") 
    || ($_FILES["image"]["type"] == "image/jpeg") 
    || ($_FILES["image"]["type"] == "image/pjpeg") 
    || ($_FILES["image"]["type"] == "image/jpg") 
    || ($_FILES["image"]["type"] == "image/png")) 
    && ($_FILES["image"]["size"] < 2097152) 
    && (strlen($_FILES["image"]["name"]) < 51)) 
    { 
     if ($_FILES["image"]["error"] > 0) 
     { 
      echo "Return Code: " . $_FILES["image"]["error"]; 
     } 
     else 
     { 
      echo "Upload: " . $_FILES["image"]["name"] . "<br />"; 
      echo "Type: " . $_FILES["image"]["type"] . "<br />"; 
      echo "Size: " . ($_FILES["image"]["size"]/1024) . " Kb<br />"; 
      echo "Temp file: " . $_FILES["image"]["tmp_name"] . "<br />"; 

      if (file_exists("images/" . $_FILES["image"]["name"])) 
      { 
      echo $_FILES["image"]["name"] . " already exists. "; 
      } 
      else 
      { 
       move_uploaded_file($_FILES["image"]["tmp_name"], 
        "images/" . $_FILES["image"]["name"]); 
      } 
     } 
    } 
    else 
    { 
     echo "Invalid file"; 
    } 
    $filename = $_FILES["image"]["type"]; 
    $dir = "uploads/$filename"; 
    chmod("uploads",0777); 
    $success = copy($_FILES[images][tmp_name], $dir); 
    if ($success) 
    { 
     echo " Files Uploaded Successfully<BR>"; 
     SendIt(); 
    } 
}//end of upload func' 


function SendIt() { 
// 
global $attachments,$Email_to,$Email_msg,$email_subject,$email_from; 

$mail = new PHPMailer(); 
$mail->IsSMTP();// send via SMTP 
$mail->Host = "localhost"; // SMTP servers 
$mail->SMTPAuth = false; // turn on/off SMTP authentication 
$mail->From = $email_from; 
$mail->AddAddress($Email_to); 
$mail->AddReplyTo($email_from); 
$mail->WordWrap = 50;// set word wrap 
//now Attach all files submitted 
$mail->AddAttachment("uploads"."/".$_FILES["image"]["type"]); 

$mail->IsHTML(false);// send as HTML 
} 


?> 

预先感谢您!

回答

0

对于问题1:

尝试发送邮件与该类没有投入任何变量。所以,只要让一些程序代码发送一封邮件到你自己的地址,看看它是否到达。

对于问题2:

你是把一些文本$output但你永远不会输出$output

+0

我加了这三行: – shmnsw

+0

我加了这三行:echo $ output; // $ image = $ _POST [“image”]; uploadImage($ image);紧接在:if(empty($ action))块之后,仍然没有显示任何内容。 – shmnsw

相关问题