Jump to content
  • 0

Форма обратной связи


Lisa_01
 Share

Question

я вставила на сайт форму обратной связи, в ней должна быть возможность прикреплять графические файлы ***.jpg . Письмо приходит, но файл можна сохранить только как текстовый. Помогите, пожалуйста найти ошибку!

mail.php

<?php

$name=$_POST["name"];

$email=$_POST["email"];

$mess=$_POST["mess"];

if (isset ($name))

{

$name = substr($name,0,20);

if (empty($name))

{

echo "<center><b>Не указано имя !!!<p>";

echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";

exit;

}

}

else

{

$name = "не указано";

}

if (isset ($email))

{

$email = substr($email,0,20);

if (empty($email))

{

echo "<center><b>Не указан e-mail !!!<p>";

echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";

exit;

}

}

else

{

$email = "не указано";

}

if (isset ($mess))

{

$mess = substr($mess,0,1000);

if (empty($mess))

{

echo "<center><b>Сообщение не написано !!!<p>";

echo "<a href=index.html>Вернуться и правильно заполнить форму.</a>";

exit;

}

}

else

{

$mess = "не указано";

}

$i = "не указано";

if ($name == $i AND $email == $i AND $mess == $i)

{

echo "Ошибка ! Скрипту не были переданы параметры !";

exit;

}

$to = "mail@ukr.net";

$subject = "Сообщение с вашего интернет-сайта";

$message = "Имя пославшего:$name Электронный адрес:$email Сообщение:$mess IP-адрес:$REMOTE_ADDR";

function XMail( $from, $to, $subj, $text, $filename) {

$f = fopen($filename,"rb");

$un = strtoupper(uniqid(time()));

$head = "From: $from\n";

$head .= "To: $to\n";

$head .= "Subject: $subj\n";

$head .= "X-Mailer: PHPMail Tool\n";

$head .= "Reply-To: $from\n";

$head .= "Mime-Version: 1.0\n";

$head .= "Content-Type:multipart/mixed;";

$head .= "boundary=\"———-".$un."\"\n\n";

$zag = "————".$un."\nContent-Type:text/html;\n";

$zag .= "Content-Transfer-Encoding: 8bit\n\n$text\n\n";

$zag .= "————".$un."\n";

$zag .= "Content-Type: application/octet-stream;";

$zag .= "name=\"".basename($filename)."\"\n";

$zag .= "Content-Transfer-Encoding:base64\n";

$zag .= "Content-Disposition:attachment;";

$zag .= "filename=\"".basename($filename)."\"\n\n";

$zag .= chunk_split(base64_encode(fread($f,filesize($filename))))."\n";

return @mail("$to", "$subj", $zag, $head);

}

XMail ($email,$to,$subject,$message, $_FILES['upl']['tmp_name']) or print "Не могу отправить письмо !!!";

header("Location: http://photoshop.hut.ru/index.html");

?>

HTML формы

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

<center><b>Ваше имя<br><input type=text name=name size=30><p>

Ваш e-mail<br><input type=text name=email size=30><p>

Ваш файл<br><input type="File" name="upl"><p>

Ваше сообщение<br><textarea name=mess rows=10 cols=50></textarea><p>

<input type=submit value="Отправить сообщение">

</form>

:)

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

А что, сохранить файл с расширением jpg нельзя? Тут проблема или в почтовике или в передаваемых заголовках.

//Код оформлен ужасно, даже не буду пытаться разобраться, если письмо уходит, то дело не в приведённом коде

Edited by Int
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy