Jump to content
  • 0

Формы


Guooff
 Share

Question

Доброе время суток, я вот столкнулся с проблемой - вот создал галерею и хочу, что бы пользователи сайта так же могли мели некую возможность отправки изображений...

Собрался делать форму отправки изображений + дополнительная инфа мне на эмеил, то есть я проверил и добавил в гелерею... вот пример формы http://skater.ru/foto/sendfoto.php сделать форму отправки (только что бы в отличии от этой формы она была для всех, как зарегистрированных так и не зарегистрированных... и так же что бы была там одна какая то статическая картинка с текстом который нужно ввести для проверки, типо анти спам)

вот то что я смог пока сделать... отправляет всё нормально....

файл foto.php

<tr>
<td>
<form action=mail.php method=post enctype="multipart/form-data" method="POST">
<table border=0 cellpadding=2 cellspacing=8>
<tr>
<td>Ваше имя:</td>
<td><input type=text name=name size=30><p></td>
</tr>
<tr>
<td>Ваш e-mail:</td>
<td><input type=text name=email size=30><p></td>
</tr>
<tr>
<td>Тип фото:</td>
<td><input type=radio name=type value=трюк checked> трюк | <input name=type type=radio value=из_жизни > из жизни<p></td>
</tr>
<tr>
<td>Город в котором<br> сделано фото:</td>
<td>
<select name=city >
<option value=" ">Не задано</option>
<option value="cherkasy">Черкасы </option>
<option value="chernihiv">Чернигов </option>
<option value="chernivtsi">Черновцы </option>
<option value="dnipropetrovsk">Днепропетровск </option>
<option value="donetsk">Донецк </option>
<option value="ivano-frankivsk">Ивано-Франковск </option>
<option value="kharkiv">Харьков </option>
<option value="kherson">Херсон </option>
<option value="khmelnitsky">Хмельницк </option>
<option value="kiev">Киев </option>
<option value="kirovograd">Кировоград </option>
<option value="lutsk">Луцк </option>
<option value="lviv">Львов </option>
<option value="nikolaev">Николаев </option>
<option value="odessa">Одесса </option>
<option value="poltava">Полтава </option>
<option value="povno">Ровно </option>
<option value="simferopol">Симферополь </option>
<option value="sumy">Сумы </option>
<option value="ternopil">Тернополь </option>
<option value="uzhgorod">Ужгород </option>
<option value="vinnitsa">Винница </option>
<option value="zaporozhye">Запорожье </option>
</select>
<br>
<small>(если города нет в списке, укажи его в поле "комментарий")</small>
</td>
</tr>
<tr>
<td>Кто на фото:</td>
<td><input name=skater type="text" value="" size=30 maxlength=25></td>
</tr>
<tr>
<td>Что делает:</td>
<td><input name=trick type="text" value="" size=30 maxlength=25></td>
</tr>
<tr>
<td>Комментарий:</td>
<td><textarea name=mess rows=5 cols=23></textarea><br></td>
</tr>
<tr><td>Фотограф:</td>
<td><input name=photograph type="text" value="" size=30 maxlength=25></td></tr>
<tr>
<td></td>
<td align="center"><input type=submit value=”Отправить сообщение”></td>
</tr>
</table>
</form>
</td>
</tr>

а фот второй файл mail.php

<?php
$xxx =$_POST["xxx"];

$name=$_POST["name"];
$email=$_POST["email"];
$email=$_POST["type"];
$email=$_POST["city"];
$email=$_POST["skater"];
$email=$_POST["trick"];
$mess=$_POST["mess"];
$email=$_POST["photograph"];

if (isset ($name))
{
$name = substr($name,0,20);
if (empty($name))
{
echo "<center><b>Не указано имя.<p>";
echo "<a href=foto.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else

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



if (isset ($city))
{
$city = substr($city,0,50);
if (empty($city))
{
echo "<center><b>Вы не указали город в котором сделано фото.<p>";
echo "<a href=foto.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$city = "не указано";
}


if (isset ($skater))
{
$skater = substr($skater,0,50);
if (empty($skater))
{
echo "<center><b>Вы не указали кто на фото.<p>";
echo "<a href=foto.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$skater = "не указано";
}



if (isset ($trick))
{
$trick = substr($trick,0,60);
if (empty($trick))
{
echo "<center><b>Вы не указали что делает.<p>";
echo "<a href=foto.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$trick = "не указано";
}



if (isset ($photograph))
{
$photograph = substr($photograph,0,60);
if (empty($photograph))
{
echo "<center><b>Вы не указали что делает.<p>";
echo "<a href=foto.php>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$photograph = "не указано";
}



$i = "не указано";
if ($name == $i AND $email == $i AND type == $i AND $city == $i AND $skater == $i AND $trick == $i AND $mess == $i AND $photograph == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}
$to = "mail@mail.ru";
$subject = "Freestyle Skateboard - фото";
$message = "[ Имя: $name ]::::::::::[ Электронный адрес: $email ]::::::::::[ Тип фото: $type ]::::::::::[ Город в котором
сделано фото:: $city ]::::::::::[ Кто на фото: $skater ]::::::::::[ Что делает: $trick ]::::::::::[ Сообщение: $mess ]:::::::::[ Фотограф: $photograph ]:::::::::[ IP-адрес: $REMOTE_ADDR ]";
mail ($to,$subject,$message) or print "Не могу отправить письмо.";
echo "<center><b>Спасибо, Ваше сообщение отправлено. Администратор свяжется с Вами в ближайшее время! <br><a href=index.html>Нажмите</a>, чтобы вернуться на Главную страницу сайта";
exit;
?>

Это в общем то что вышло и то что работает

А вот как сделать так что бы ещё можно было вставлять фото(что фото отправлялось в месте с инфой на эмеил... ) - это всё не как не выходит...., помогите! за благовременно спасибо!!!

Edited by Guooff
Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Так это ж в любом учебнике, даже расписывать не хочется.

А тэги <center>,<p> и <b> нарочно не закрыты?

Да и <center><p> вообще дико смотрится. Кстати, вместо <center> сейчас используют text-align:center у того же <p> А ещё параметры ьэгов не в кавычках

Link to comment
Share on other sites

  • 0
Так это ж в любом учебнике, даже расписывать не хочется.

А тэги <center>,<p> и <b> нарочно не закрыты?

Да и <center><p> вообще дико смотрится. Кстати, вместо <center> сейчас используют text-align:center у того же <p> А ещё параметры ьэгов не в кавычках

спасибо и в прям забыл закрытть, а что касается отправки изображений вместе с инфой заполненной на эмеил - как не пробовал у меня не выходит нормально отправить изображение..., инфа доходит а изображение не... вот и обратился с мыслью что может быть мне тут кто ни будь поможет там правильно дописать форму отправки изображеий так что бы работало...
Link to comment
Share on other sites

  • 0
method=post  method="POST"

Оригинально

Каким учебником пользовался?

http://www.htmlbook.ru/content/?id=44

А дальше используй $_FILES

в прошлом году где то в интернете нашёл что к чему и как, на а дальше я сам...

вот что вышло, не совсем удачно....

 <form action=gallery_forma_mail.php method=post enctype="multipart/form-data" method="POST">
<table border=0 cellpadding=2 cellspacing=8>
<tr>
<td>Ваше имя:</td>
<td><input type=text name=name size=30></td>
</tr>
<tr>
<td>Ваш e-mail:</td>
<td><input type=text name=email size=30></td>
</tr>
<tr>
<td>Тип фото:</td>
<td><input type=radio name=type value=трюк checked> трюк | <input name=type type=radio value=из_жизни > из жизни<p></td>
</tr>
<tr>
<td>Город в котором<br> сделано фото:</td>
<td>
<select name=city >
<option value=" ">Не задано</option>
<option value="cherkasy">Черкасы </option>
<option value="chernihiv">Чернигов </option>
<option value="chernivtsi">Черновцы </option>
<option value="dnipropetrovsk">Днепропетровск </option>
<option value="donetsk">Донецк </option>
<option value="ivano-frankivsk">Ивано-Франковск </option>
<option value="kharkiv">Харьков </option>
<option value="kherson">Херсон </option>
<option value="khmelnitsky">Хмельницк </option>
<option value="kiev">Киев </option>
<option value="kirovograd">Кировоград </option>
<option value="lutsk">Луцк </option>
<option value="lviv">Львов </option>
<option value="nikolaev">Николаев </option>
<option value="odessa">Одесса </option>
<option value="poltava">Полтава </option>
<option value="povno">Ровно </option>
<option value="simferopol">Симферополь </option>
<option value="sumy">Сумы </option>
<option value="ternopil">Тернополь </option>
<option value="uzhgorod">Ужгород </option>
<option value="vinnitsa">Винница </option>
<option value="zaporozhye">Запорожье </option>
</select>
<br>
<small>(если города нет в списке, укажи его в поле "комментарий")</small>
</td>
</tr>
<tr>
<td>Кто на фото:</td>
<td><input name=skater type="text" value="" size=30 maxlength=25></td>
</tr>
<tr>
<td>Что делает:</td>
<td><input name=trick type="text" value="" size=30 maxlength=25></td>
</tr>
<tr>
<td>Комментарий:</td>
<td><textarea name=mess rows=5 cols=23></textarea><br></td>
</tr>
<tr>
<td>Фотограф:</td>
<td><input name=photograph type="text" value="" size=30 maxlength=25></td>
</tr>
<tr>
<td>Фото:</td>
<td><input name=images type="file" size="30"><br><small>(jpg, размер не более 700 кб)</small></td>
</tr>
<tr>
<td></td>
<td align="center"><input type=submit value=”Отправить сообщение”></td>
</tr>
</table>
</form>

а вот второй файл

<?php
$xxx =$_POST["xxx"];

$name=$_POST["name"];
$email=$_POST["email"];
$email=$_POST["type"];
$email=$_POST["city"];
$email=$_POST["skater"];
$email=$_POST["trick"];
$mess=$_POST["mess"];
$email=$_POST["photograph"];
$email=$_FILES["images"];

if (isset ($name))
{
$name = substr($name,0,20);
if (empty($name))
{
echo "<center><b>Не указано имя.<p>";
echo "<a href=gallery_forma.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else

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



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


if (isset ($skater))
{
$skater = substr($skater,0,50);
if (empty($skater))
{
echo "<center><b>Вы не указали кто на фото.<p>";
echo "<a href=gallery_forma.html>Вернуться и правильно заполнить форму.</a>";
exit;
}
}
else
{
$skater = "не указано";
}



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



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



$i = "не указано";
if ($name == $i AND $email == $i AND type == $i AND $city == $i AND $skater == $i AND $trick == $i AND $mess == $i AND $photograph == $i AND $images == $i)
{
echo "Ошибка ! Скрипту не были переданы параметры !";
exit;
}
$to = "mail@mail.ru";
$subject = "Freestyle - Форма отправки фотографий";
$message = "[ IP-адрес: $REMOTE_ADDR ]:::::::::[ Имя: $name ]::::::::::[ Электронный адрес: $email ]::::::::::[ Тип фото: $type ]::::::::::[ Город в котором
сделано фото:: $city ]::::::::::[ Кто на фото: $skater ]::::::::::[ Что делает: $trick ]::::::::::[ Сообщение: $mess ]:::::::::[ Фотограф: $photograph ]:::::::::[ Фото: $images ]";
mail ($to,$subject,$message) or print "Не могу отправить письмо.";
echo "<center><b>Спасибо, Ваше сообщение отправлено. Администратор свяжется с Вами в ближайшее время! <br><a href=index.html>Нажмите</a>, чтобы вернуться на Главную страницу сайта";
exit;
?>

но а на эмеил мне пришло всё как положено, то есть информация которую заполнил, но а в место фотки пришло вот это /tmp/phphNHvaC

Link to comment
Share on other sites

  • 0

Опять два раза method указал

Вместо фотки тебе пришёл путь к временному файлу с фоткой. Если ты хочешь выслать файл на почту, читай rfc (номер не помню), как передавать файлы. Его вроде бы в base64 надо сконвертировать и ещё что-то там сделать. В любом случае, в $_FILES содержатся только имена, а не содержимое, тебе надо сотворить move_uploaded_file и file_get_contents. Или только второе, если к временному файлу есть доступ.

Edited by Int
Link to comment
Share on other sites

  • 0
Опять два раза method указал

Вместо фотки тебе пришёл путь к временному файлу с фоткой. Если ты хочешь выслать файл на почту, читай rfc (номер не помню), как передавать файлы. Его вроде бы в base64 надо сконвертировать и ещё что-то там сделать. В любом случае, в $_FILES содержатся только имена, а не содержимое, тебе надо сотворить move_uploaded_file и file_get_contents. Или только второе, если к временному файлу есть доступ.

не как не выходит, в google бил - толкового не чего не нашёл..., вообще в панике.... как это воплотить, помогите пожалуйста, как бы всё работает хорошо, единственное что не могу по человечески сделать отправку изображений на эмеил

Link to comment
Share on other sites

  • 0
не как не выходит, в google бил - толкового не чего не нашёл..., вообще в панике.... как это воплотить, помогите пожалуйста, как бы всё работает хорошо, единственное что не могу по человечески сделать отправку изображений на эмеил

Вот пример скрипта, всё расписано. если что то будет не понятно, то посетите форум и поиском найдёте ещё кучу тем с обсуждением Вашей проблемы.

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