|
|
|
| Имеется вот такой скрипт (отправка заполненных клиентом данных на электронную почту):
<?php
require_once ("config.php");
$sql = "SELECT * FROM tablica
WHERE id = \"$id\"
";
$result = @mysql_query($sql,$connection) or die("Error");
while ($row = mysql_fetch_array($result)) {
$discount = $row['discount'];
}
mysql_close($connection);
?>
<html>
<head>
<title>Информация</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<?php
$form_block = "
<form method=\"post\" action=\"$PHP_SELF\">
<table cellspacing=\"3\" cellpadding=\"5\" class=\"textsimplas\" border=\"0\" align=\"center\">
<tr>
<td valign=\"top\" colspan=\"2\">
<p><strong>* Ваши имя и фамилия: </strong><br>
<input type=\"text\" name=\"sender_name\" value=\"$sender_name\" size=35 style=\"border: 1 solid #000000\"></p>
<p><strong>* Адрес Вашей электронной почты: </strong><br>
<input type=\"text\" name=\"sender_email\" value=\"$sender_email\" size=35 style=\"border: 1 solid #000000\"></p>
<p><strong>Номер Вашего телефона: </strong><br>
<input type=\"text\" name=\"sender_tel\" value=\"$sender_tel\" size=35 style=\"border: 1 solid #000000\"></p>
<p><strong>* Ваш вопрос: </strong><br>
<textarea name=\"message\" cols=27 rows=8 wrap=virtual style=\"border: 1 solid #000000\">$message</textarea></p>
<p><strong>Скидка: </strong><br />
<input type='text' name='discount' value='$discount' size=3>%</p>
<input type=\"hidden\" name=\"op\" value=\"ds\">
</td>
</tr>
<tr>
<td align=\"center\" colspan=\"2\">
<p><strong>* Отмеченные поля для заполнения обязательны! </strong></p>
</td>
</tr>
<tr>
<td align=\"center\" colspan=\"2\">
<p>
<input type=\"submit\" name=\"submit\" value=\"Отправить\" class=\"textsimplas\">
<input type=\"reset\" value=\"Очистить\" class=\"textsimplas\">
</p>
</td>
</tr>
</table>
</form>
";
if ($op != "ds") {
// это нужно чтобы увидеть форму
echo "$form_block";
} else if ($op == "ds") {
if ($sender_name == "") {
$name_err = "<p class=\"textsimplas\" align=\"center\"><font color=red>Пожалуйста, введите Ваше имя и фамилию! </font></p>";
$send = "no";
}
if ($sender_email == "") {
$email_err = "<p class=\"textsimplas\" align=\"center\"><font color=red>Пожалуйста, введите адрес Вашей электронной почты! </font></p>";
$send = "no";
}
if ($message == "") {
$message_err = "<p class=\"textsimplas\" align=\"center\"><font color=red>Пожалуйста, введите Ваш вопрос! </font></p>";
$send = "no";
}
if ($send != "no") {
// ниже следуют действия, которые нужно выполнить если условие истинно!
$msg = "Запрос информации\n";
$msg .= "Имя и фамилия отправителя:\t\t$sender_name\n";
$msg .= "E-Mail адрес отправителя:\t$sender_email\n";
$msg .= "Телефон отправителя:\t$sender_tel\n";
$msg .= "Вопрос отправителя:\t$message\n\n";
$msg .= "Скидка:\t$discount%\n";
$to = "";
$subject = "Nazvanie";
$mailheaders = "From: Klient <> \n";
$mailheaders .= "Reply-To: $sender_email\n\n";
@mail($to, $subject, $msg, $mailheaders);
echo "<p class=\"textsimplas\">Здравствуйте, $sender_name. </p>";
echo "<p class=\"textsimplas\">Ваше сообщение было отправлено! </p>";
}
else if ($send == "no") {
echo "$name_err";
echo "$email_err";
echo "$message_err";
echo "$form_block";
}
}
?>
</body>
</html>
|
Как сделать так, чтобы клиент не смог бы в поле Скидка
<p><strong>Скидка: </strong><br />
<input type='text' name='discount' value='$discount' size=3>%</p>
ничего менять.
Поясню: если из базы данных пришло число 10 (напечаталось в этом поле), то 10 бы и осталось (нельзя, чтобы клиент редактировал бы это поле). Как это сделать (заблокировать)? | |
|
|
|
|
|
|
|
для: jurij_83
(23.10.2006 в 15:52)
| | 1. <input type='text' name='discount' value='$discount' size=3 disabled>
2. убрать нафиг инпут, поставить число
3. в форме это поле не передавать (а на самом деле клиент может подправить форму) | |
|
|
|
|
|
|
|
для: elenaki
(23.10.2006 в 16:05)
| | 1. Если сделать так:
<input type='text' name='discount' value='$discount' size=3 disabled>
то плохо видно то, что введено.
2. убрать нафиг инпут, поставить число.
Это невозможно, потому что число берётся из базы данных.
3. в форме это поле не передавать.
Если я это поле просто вывожу как обычный текст, то тогда поле 'discount' не отправляется по почте (оно приходит пустым).
Так что проблема не решена...
Как сделать так, чтобы клиент не смог бы в поле Скидка
<p><strong>Скидка: </strong><br />
<input type='text' name='discount' value='$discount' size=3>%</p>
| ничего менять.
Может кто подскажет или напишет какой-нибудь код (может блокировка на JavaScripte)... | |
|
|
|
|
|
|
|
для: jurij_83
(23.10.2006 в 23:58)
| | в общем, логичней будет вместо поля типа input выводить в поле типа div, span или в таблицу
<input type='text' name='discount' value='$discount' size=3 onKeyPress="event.returnValue=false;">
|
вроде так... | |
|
|
|
|
|
|
|
для: jurij_83
(23.10.2006 в 23:58)
| | Если я это поле просто вывожу как обычный текст, то тогда поле 'discount' не отправляется по почте (оно приходит пустым).
====================================
а если оно НЕ меняется, зачем его вообще посылать? просто покажите его в виде текста (я именно имела ввиду) юзеру, тогда он ничего поменять и не сможет. | |
|
|
|
|
|
|
|
для: elenaki
(24.10.2006 в 10:19)
| | А что: разве нельзя просто вот так написать:
<input type=text READONLY />
|
Да и все... | |
|
|
|
|
|
|
|
для: coloboc66
(24.10.2006 в 11:24)
| | Спасибо. Теперь что и надо!
Работает и это:
<input type='text' name='discount' value='$discount' size=3 onKeyPress="event.returnValue=false;">
Работает также и это:
<input type=text READONLY />
А что лучше использовать? | |
|
|
|
|
|
|
|
для: jurij_83
(24.10.2006 в 11:47)
| | В первом случае может возникнуть проблема с кроссбраузерностью. Но не буду утверждать... | |
|
|
|
|
|
|
|
для: coloboc66
(24.10.2006 в 12:02)
| | используйте свойство readonly (он везде пашет)
ЗЫ: только когда видишь, что что-то есть в поле, а это нельзя редактировать, так и хочется залезть в код и подправить значение поля
так что подумайте, а стоит ли его показывать вообще | |
|
|
|
|
|
|
|
для: enero
(24.10.2006 в 16:32)
| | Ну если так рассуждать, то клиент может точно таким же образом подредактировать у себя на странице в броузере все, что угодно, не только input type=text. | |
|
|
|
|
|
|
|
для: coloboc66
(24.10.2006 в 17:07)
| | Согласен. | |
|
|
|