-
Вебмастеру
(
http://forum.oszone.net/forumdisplay.php?f=22)
oIo_DeN_oIo |
23-09-2006 22:10 488698 |
формы и ещё раз они
|
Strange_V |
23-09-2006 23:36 488723 |
Вот упрощений вариант
HTML код:
<script language="JavaScript">
function sums() {
ss=0;
for (i=0; i<4; i++){
el=document.getElementById("r"+i);
if (el.checked==true)
ss=ss+parseInt(el.value);
}
suma=document.getElementById("suma");
suma.value=ss;
}
</script>
<form name="summ" action="" onmouseover="sums()">
<input type="checkbox" id="r0" value="125" OnClick="sums()">Number 0<br>
<input type="checkbox" id="r1" value="5" OnClick="sums()">Number 1<br>
<input type="checkbox" id="r2" value="17" OnClick="sums()">Number 2<br>
<input type="checkbox" id="r3" value="205" OnClick="sums()">Number 3<br>
<input type="text" id="suma" value="0">
</form>
По аналогии добавляться еще элементы…
|
oIo_DeN_oIo |
23-09-2006 23:51 488727 |
а как пригвоздить этот код к кнопке отправить на мыло? с этим то какраз проблемы.... спасибо за код!
|
Vlad Drakula |
24-09-2006 00:03 488730 |
oIo_DeN_oIo
Цитата:
а как пригвоздить этот код к кнопке отправить на мыло? с этим то какраз проблемы.... спасибо за код!
|
просто создать хидден элемент в форме и менять его значение.
|
oIo_DeN_oIo |
24-09-2006 00:26 488738 |
а можно по-подробнее на примере кода выше?
|
Vlad Drakula |
24-09-2006 00:35 488742 |
suma=document.getElementById("suma");
suma.value=ss;
вот этот кусок отвечает за изменение едитбокса со значением суммы, который отвравится вместе с формой на сервер при отправке.
|
Strange_V |
24-09-2006 00:49 488747 |
Цитата:
suma=document.getElementById("suma");
suma.value=ss;
вот этот кусок отвечает за изменение едитбокса со значением суммы, который отвравится вместе с формой на сервер при отправке.
|
нужно только дать ему имя
HTML код:
<input type="text" id="suma" name="ssuma" value="0">
и на стороне сервера принять $_POST['ssuma'] (ну или $_GET['ssuma'], какой метод поставишь)
|
oIo_DeN_oIo |
24-09-2006 13:43 488863 |
я имел ввиду как мне сделать имея форму (например приведенную выше) кнопку отправить
вот вариант
Код:
<input type="submit" value="отправить">
но надо же ворме указать через какой скрипт отправлять то. а с этим проблемы.
Был когда то такой вариант в начале формы пишешь
Код:
<form method="post" action="send.phtml">
но этот send.phtml отправляет в плохой кодировке...не читабельной... в почтовике...
содержание его
PHP код:
<?
$fText="$fTitle\n\n";
for ($i=1;$i<=$fCount;$i++) {$fText.=$fName[$i].": ".$fData[$i]."\n";}
$fText.="\n\n";
$fText.=date("l dS of F Y h:i:s A");
if (mail($fMail,$fSubject,$fText)) {Header("Location: $fOk");}
else {Header("Location: $fBad");}
exit;
?>
|
Strange_V |
24-09-2006 13:49 488867 |
т.е. тебе надо сам скрипт отправки данных на мыло (на php)?
|
oIo_DeN_oIo |
24-09-2006 17:21 488920 |
Да надо сам скрипт.
Просто выше указанный собирает данные из формы но письмо приходит в таком содержании
: Пупкин Василий
: ppkin@mail.ru
: 304
:
Перед двоеточиями надобы вставить имена полей ФИО для первого поля... притом name"fData[1]" надо писать для каждого поля для обтработчика (скрипта)
|
Strange_V |
24-09-2006 19:45 488952 |
Пример (JS вырезал)
HTML код:
<form name="summ" action="script.php" method="post" onmouseover="sums()">
Name <input type="text" name="name"><br>
E-mail <input type="text"name="mail"><br>
Number 0 <input type="checkbox" id="r0" value="125" OnClick="sums()"><br>
.................
Number 3 <input type="checkbox" id="r3" value="205" OnClick="sums()"><br>
<input type="text" name="ssuma" id="suma" value="0"><br>
<input type="submit" value="Send">
</form>
script.php
PHP код:
<?php
$date = date ('d.m.Y, H:i');
$text = "Name: $_POST[name]\nE-mail: $_POST[mail]\nSum: $_POST[ssuma]\n\n$date";
mail ('root@127.0.0.1', 'Zakaz', $text, 'Content-Type: text/plain; charset=windows-1251');
?>
В результате
Name: Pupkin
E-mail: pupkin@mail
Sum: 147
24.09.2006, 18:13
Цитата:
притом name"fData[1]" надо писать для каждого поля для обтработчика (скрипта)
|
не понял...
|
oIo_DeN_oIo |
25-09-2006 23:54 489538 |
Спасибо поробую.. теперь знаю как указывать поля в обработчике скрипта..
Проблема только в этом:
Код:
<form method="POST" action="sender.php">
<p>
<input type="radio" value="4676" checked name="56">
<input type="radio" name="name1" value="56">
<input type="radio" name="mail" value="746">
<input type="submit" value="Отправить" name="5645"><input type="reset" value="Сброс" name="646"></p>
</form>
точки выбираются все по нажатию, а не одна из перечисленных...это ничего если каждый переключатель будет в отдельной яйчейке?
не знаю сложно ли это или нет но по форме что по ссылке точка или галочка выбираются по клику в любой точке стороки т.е. нет необходимости кликать точно на точку или чекер чтобы выбрать его.
|
Strange_V |
26-09-2006 19:49 489963 |
Ех...
На счет "radio" попробуй указать одинаковые имена ;)
Цитата:
это ничего если каждый переключатель будет в отдельной яйчейке?
|
по барабану…
Цитата:
не знаю сложно ли это или нет но по форме что по ссылке точка или галочка выбираются по клику в любой точке стороки т.е. нет необходимости кликать точно на точку или чекер чтобы выбрать его.
|
не сложно…
в каждом "<tr>" (для radio) нужно дописать
OnClick="javascript :if (document.getElementById('r0').checked==false){document.getElementById('r0').checked=true};sums()" style='cursor:hand'
Смотри аттач…
|
oIo_DeN_oIo |
27-09-2006 00:29 490064 |
уже разобрался во всём.. но за аттач спасибо.!
Только вот как сделать редирект в обработчике на страницу: спасибо форма отправлена... а то белый экран...и всё
|
Strange_V |
27-09-2006 19:36 490459 |
<meta http-equiv="refresh" content="0;URL=test.php">
|
Время: 14:17.
© OSzone.net 2001-