Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите создать скрипт для обработки формы
Форумы портала PHP.SU » Клиентская разработка » Программное обеспечение » Помогите создать скрипт для обработки формы

Страниц (1): [1]
 

1. iccentr - 26 Июля, 2010 - 08:33:38 - перейти к сообщению
Пытаюсь создать скрипт для обработки следующей формы

<form method="post" action="/php/vote.php">
Откуда Вы узнали о "Микс-Трэвл"
<input type="radio" name="where" value="internet" />&nbsp;Интернет <br />
<input type="radio" name="where" value="Podezd" />&nbsp;Объявление на подъезде <br/>
<input type="radio" name="where" value="stolb" />&nbsp;Рекламный щит на столбе, дереве <br/>
<input type="radio" name="where" value="rastyazhka" />&nbsp;Увидели растяжку на балконе <br/>
<input type="radio" name="where" value="vizitka" />&nbsp;Принесли визитку <br/>
<input type="radio" name="where" value="friends" checked="checked" />&nbsp;Посоветовали друзья </br>
<input type="radio" name="where" value="other" />&nbsp;Другое <br/>
<textarea name="comments" rows="1" cols="23">
Напишите как узнали
</textarea>
<p align="left">
<button name="submit" type="submit">
<span style="font-family: Arial; font-size: "2"">Отправить
</span>
</button>
</form>

Эта форма хорошо выглядит на сайте. Вот только возникла проблема с её обработкой, т.е. с написанием скрипта. Теорию я прочитал – принцип действия понятен. Но никак не могу подогнать свои данные к найденному скрипту, так как совсем не понимаю PHP. Вот скрипт:

<?php
// файл с конкретным голосованием
$data = File("$id.dat");

// выводим благодарности,
// если это не просто просмотр результатов
if ($vote) echo "<b><font color=red> Спасибо за Ваше мнение! </font></b><p>";

// выводим заголовок голосования - 1я строка файла
echo "<b>$data[0]</b><p>";

// печатаем список ответов и результатов - остальные строки
for ($i=1;$i<count($data);$i++) {
$votes = split("~", $data[$i]); // значение~ответ
echo "$votes[1]: <b>$votes[0]</b><br>";
}

// если это не просмотр результатов, а голосование,
// производим необходимые действия для учета голоса
if ($vote) {
$f = fopen("$id.dat","w");
fputs($f, "$data[0]");
for ($i=1;$i<count($data);$i++) {
$votes = split("~", $data[$i]);
if ($i==$vote) $votes[0]++;
fputs($f,"$votes[0]~$votes[1]");
}
fclose($f);
}
?>

Вся проблема в том, что мне нужно чтобы ответы приходили на мой емейл. И после нажатия на кнопку «Отправить» нужно чтобы фраза «Спасибо за Ваше мнение!» появлялась на главной странице, ниже формы голосования, а не на новой странице.

Если Вам не трудно и у вас есть минуточка свободного времени, подскажите, пожалуйста, как это сделать.
2. toropss - 26 Июля, 2010 - 10:12:10 - перейти к сообщению
3. ZeiZ - 26 Июля, 2010 - 10:18:41 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. mail("admin@site.com","Результат голосования",$_POST['where']);
  3. ?>


Ну это так... в одну строчку.
4. iccentr - 26 Июля, 2010 - 12:07:44 - перейти к сообщению
Спасибо. Но это не совсем то, что мне нужно
5. SAD - 26 Июля, 2010 - 12:12:43 - перейти к сообщению
Так скажите конкретней, что нужно
6. iccentr - 26 Июля, 2010 - 12:14:34 - перейти к сообщению
Я внёс дополнения в моё описание проблемы
7. duk - 26 Июля, 2010 - 12:15:47 - перейти к сообщению
красавец, менять вопрос после того, как на него уже получен ответ - это пять

Если по теме - это Аякс

 

Powered by ExBB FM 1.0 RC1