Search the Community
Showing results for tags 'форма с приложением'.
-
Здравствуйте! Подскажите, что нужно изменить или добавить в код, чтобы форма передавала файл полностью и с изначальным названием Пока что форма работает только с отправкой файла с измененным названием и размеров в 0 байт И да, я ламер, и в этом мало понимаю <form ENCTYPE="multipart/form-data" name="form1" method="post" action="<?php echo htmlspecialchars($PHP_SELF, ENT_QUOTES)?>"> Фамилия, Имя <input name="name" type="text"><br /> Прикрепить файл .zip до 2Мб:<input name="userfile" type="file"><br /> <input name="submit" type="submit" value="Отправить"> </form> <?php } else { // Если кнопка submit БЫЛА нажата, то обрабатываем данные $name = htmlspecialchars(stripslashes($_POST['name'])); if ( isset ($_FILES['userfile'])) { $file_type = $_FILES['userfile']['type']; $file_size = $_FILES['userfile']['size']; $file_error = $_FILES['userfile']['error']; $file_name_new = time().".mp3"; $file_name_new_full = $_SERVER['DOCUMENT_ROOT']."/".$file_name_new; if ($file_type == "application/x-mp3-compressed") { copy ( $_FILES['userfile']['tmp_name'], $file_name_new_full ); }; } ////// Готовим письмо // Готовим разделитель $un = strtoupper(uniqid(time())); // Адрес получателя $mailowner = "тут_мой@mail.com"; // Ящик отправителя $from = "no-reply@".$_SERVER['HTTP_HOST']; // Заголовок письма $headers = "From: ".$from."\r\nReply-To: ".$from."\r\nMIME-Version: 1.0\r\nContent-Type: multipart/alternative; boundary=\"———-".$un."\"\r\n"; // Тема письма $subject = "Вам отправлен файл"; //// Готовим тело письма // Открываем и читаем бинарно файл $f = fopen($file_name_new_full,"rb"); // Текст письма $letter = "<style type=text/css> .text { font-family: Verdana, Arial, Helvetica, sans-serif; font-size:13px; color:#1e445b;line-height:18px; }</style><div class='text'>Вам отправлен файл<br /><br />Администрация сайта</div>"; // Формируем тело письма $body = "————".$un."\r\nContent-Type: text/html; charset='windows-1251'\r\nContent-Transfer-Encoding: 8bit\r\n\r\n". $letter. "\r\n————".$un."\r\nContent-Type: application/octet-stream;name=\"$file_name_new\"\r\nContent-Transfer-Encoding:base64\r\nContent-Disposition:attachment;filename=".$file_name_new."\r\n\r\n".chunk_split(base64_encode(fread($f,filesize($file_name_new_full))))."\r\n"; // Оправляем письмо $sucess = mail($mailowner, $subject, $body, $headers); // Удаляем принятый файл unlink ($file_name_new_full); } ?>