Перейти к содержимому



Помогите сделать почтовую форму (стр. 2)

#21 VMS100
VMS100
  • Неактивные
  • 11 сообщений
  • Репутация: 0
0

Отправлено 28 сентября 2010 - 19:20

ZiTosS!
В Файле: form.html исправлено на:

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

Все заработало, кроме передачи файла, он не присоединяется к письму.
Помогите пожалуйста! :)
  • 0

#22 ZiTosS
ZiTosS
  • Неактивные
  • 5 148 сообщений
  • Репутация: 8

Отправлено 28 сентября 2010 - 19:27

VMS100, кто вам сказал, что можно так просто вставить загруженный файл в тело письма?
Файлы можно прикреплять, а вот как на них ссылаться в теле письма, я честно сказать, не знаю.
Прикрепление файла: http://www.masterweb...&...ost&p=19590
  • 0

#23 VMS100
VMS100
  • Неактивные
  • 11 сообщений
  • Репутация: 0

Отправлено 28 сентября 2010 - 21:44

ZiTosS!
Все сделал, но не получается с файлом. Посмотрите пожалуйста.
<body>

<form action="form.php" method="POST" enctype="multipart/form-data">
<input type="file" name="datafile" size="40" maxlength="500" accept="text" tabindex="35" /><br />
Cообщите дополнительную информацию:<br />
<textarea name="sometext" cols="30" rows="5" tabindex="36">Дополнительная информация: ...</textarea><br />
</form>
</body>

if (isset ($datafile))
{
$datafile = substr($datafile,0,100); //Не может быть более 100 символов
}

{
$path = $_FILES['datafile']['tmp_name']; // путь до временного файла, который отправляем
$fp = fopen($path, "r"); // открываем файл на чтение
// если по каким либо причинам файл не удалось открыть на чтение (получить файловый дескриптор)
if ( !$fp )
{
print "Файл $path не может быть прочитан";
exit();
}

// если временный файл файл был открыт
$file = fread($fp, filesize($path)); // считываем из файла данные с начала длиной filesize($path) (то есть весь файл)
fclose($fp); // закрываем файл
}

if (isset ($sometext))
{
$sometext = substr($sometext,0,1000); //Не может быть более 1000 символов
if (empty($sometext))
{
echo "<center><b>Нет текста дополнительной информации<p>";
echo "<a href=form.html>Вернуться и правильно заполнить форму</a>";
exit();
}
} else {
$sometext = "не указано";
}

  • 0

#24 ZiTosS
ZiTosS
  • Неактивные
  • 5 148 сообщений
  • Репутация: 8

Отправлено 28 сентября 2010 - 22:00

VMS100,
1) предупреждение, ещё раз один код без оформления - буду наказывать. Устал уже за вами подправлять. Используйте bb-теги, уважайте других пользователей, кто пытается вам помочь.
2) я не понял, что вы хотите тут сделать. Вы ссылку, которую я вам дал выше читали? Там написано, как отсылать письмо с вложением.

Как могу описать ваш выше приведенный скрипт:
Форма с полем для загрузки файла на сервер и многострочного текстового поля. После отправки формы считываем весь загруженный файл(не проверяя загрузился ли он), далее проверка данных из многострочного поля на существование + обрезаем до 1000 символов.
Ах да... К данным, присланным методом POST или GET нужно обязательно обращаться через глобальные массивы $_POST и $_GET. То есть вместо $datafile вам нужно писать - $_POST['datafile']. Ваш вариант сработает при включенном режиме register_globals, но это такой гадкий режим, который открывает дыры. Он обычно отключен или настраивается вручную у нормальных хостеров.

Что вы этим скриптом делаете, объясните?
  • 0



Похожие темы
  Название темы Автор Статистика Последнее сообщение

Пользователь месяца
Vmir Vmir 1-й за Март
Очков активности: 1 080 4 темы, 60 сообщений, 10 баллов репутации
ТОП самых активных за этот месяц
  • Фотография MattCutts
    #1

    MattCutts (dmitrylee.com)
    Очков активности: 18 1 тема, 9 сообщений, 1 балл репутации

  • Фотография WGN
    #2

    WGN (worldgamenews.com)
    Очков активности: 13.5 1 тема, 6 сообщений, 1 балл репутации

  • Фотография Linomen
    #3

    Linomen
    Очков активности: 12 0 тем, 8 сообщений, 1 балл репутации

  • Фотография PLERDY
    #4

    PLERDY
    Очков активности: 9 1 тема, 3 сообщения, 1 балл репутации

  • Фотография Albina92
    #5

    Albina92
    Очков активности: 9 1 тема, 3 сообщения, 1 балл репутации

  • Фотография NataliaAntalia
    #6

    NataliaAntalia (zdorovemedicina.ru)
    Очков активности: 9 0 тем, 6 сообщений, 1 балл репутации

  • Фотография TindrumGM
    #7

    TindrumGM (novosti-land.ru)
    Очков активности: 7.5 1 тема, 2 сообщения, 1 балл репутации

  • Фотография elektrik19788
    #8

    elektrik19788
    Очков активности: 6 1 тема, 1 сообщение, 1 балл репутации

  • Фотография BLIK
    #9

    BLIK
    Очков активности: 6 Вне конкурса за определение пользователя месяца

  • Фотография Vmir
    #10

    Vmir
    Очков активности: 6 Вне конкурса за определение пользователя месяца

  • Показать весь ТОП 10

Поддержите форум! =)
Топ 5 участников по репутации

Оформление форума – IPBSkins.ru