php电子邮件表单和画布

时间:2014-01-18 11:34:47

标签: javascript php canvas

如前所述,我的PHP知识很少,所以非常感谢任何帮助。

我有一个工作的PHP脚本来处理我的电子邮件表单,我还有一个工作脚本来创建我的画布图像,但我现在需要它们一起工作。

目前如上所述,我有2个PHP文件和非常少的PHP知识。 file1.php - 创建存储在服务器上的画布img,canvas在文件canvas.html上设计

和file2.php - 这会通过电子邮件发送我的表单数据,表单存档于form.html

现在我需要他们全部像这样工作......

e.g。用户设计了产品,现在他们填写表格,此时我需要卡瓦斯做它的事情,我需要它来运行表单脚本。

听起来很简单,只有我阅读和尝试的所有内容都无法正常工作,任何帮助都会很好。

这是我的画布代码

<?

// set error reporting level
if (version_compare(phpversion(), '5.3.0', '>=') == 1)
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
else
error_reporting(E_ALL & ~E_NOTICE);

// save file
if ($_POST['data'] != '') {

$sRand = rand(100000, 999999);
$sOrigPath = 'cache/imagename'.$sRand.'.jpg';
@unlink($sOrigPath);

$img = $_POST['data'];
$img = str_replace('data:image/png;base64,', '', $img);
$img = str_replace('data:image/jpeg;base64,', '', $img);
$img = strip_tags($img);
$img = str_replace(' ', '+', $img);
$decodedData = base64_decode($img);

file_put_contents($sOrigPath, $decodedData);


$to =   'email@domain.com';
$subject =  ' ';
$bound_text =   "domain.com";
$bound =    "--".$bound_text."\r\n";
$bound_last =   "--".$bound_text."--\r\n";

$headers =  "From: email@domain.com\r\n";
$headers .=     "MIME-Version: 1.0\r\n"
."Content-Type: multipart/mixed; boundary=\"$bound_text\"";

$message .=     "If you can see this MIME than your client doesn't accept MIME types!\r\n"
.$bound;

$message .=     "Content-Type: text/html; charset=\"iso-8859-1\"\r\n"
."Content-Transfer-Encoding: 7bit\r\n\r\n"
."hey my <b>good</b> friend here is a picture of regal beagle\r\n"
.$bound;

$file =     file_get_contents("$sOrigPath");     
$message .=     "Content-Type: image/jpg; name=\"imagename.jpg\"\r\n"
."Content-Transfer-Encoding: base64\r\n"
."Content-disposition: attachment; file=\"imagename.jpg\"\r\n"
."\r\n"
.chunk_split(base64_encode($file))
.$bound_last;

if(mail($to, $subject, $message, $headers))
{    echo $sOrigPath;

} else {
echo 'MAIL FAILED';
}


}

代码可能很乱,但就像我说我不太了解但我知道这会创建我需要的东西,然后将jpg文件保存到服务器并通过电子邮件发送它。

现在这里是电子邮件代码

<?php
include("global.inc.php");
$errors=0;
$error="The following errors occured while processing your form input.<ul>";
pt_register('POST','firstname');
pt_register('POST','phone');
pt_register('POST','email');
pt_register('POST','message');
if($firstname=="" || $phone=="" || $email=="" || $message==""){
$errors=1;
$error.="<li>You did not enter one or more of the required fields. Please go back and     try again.";
}
if($errors==1) echo $error;
else{
$where_form_is="http".($HTTP_SERVER_VARS["HTTPS"]=="on"?"s":"")."://".$SERVER_NAME.strrev(strstr(strrev($PHP_SELF),"/"));
$message="Firstname: ".$firstname."
Phone: ".$phone."
Email: ".$email."  
Message: ".$message."
";
$message = stripslashes($message);
    mail("email@domain.com","Form Submitted at your website",$message,"From:     email@domain.com email form");
$make=fopen("admin/root.dat","a");
$to_put="";
$to_put .= $firstname."|".$phone."|".$email."|".$message."
";
fwrite($make,$to_put);

header("Refresh: 0;url=http://www.domain.com/thanks.html");
?><?php 
}
?>

我意识到,因为脚本是他们试图发送邮件但是我不确定我能做出最终形式。它可以简单地从file1.php完成吗?

0 个答案:

没有答案