Проблема с отображением - Visavi.net
https://visavi.net/
RSS - Visavi.net
https://visavi.net/assets/img/images/logo_small.png
RSS - Visavi.net
https://visavi.net/
[email protected] (admin)
[email protected] (admin)
Sat, 23 Nov 2024 15:27:23 +0300
-
<pre class="prettyprint"><?php
$ОткогоИмя = trim(htmlspecialchars($_POST['from']));
$ОткогоТелефон = trim(htmlspecialchars($_POST['tel']));
$ОткогоПочта = trim(htmlspecialchars($_POST['mail']));
$ТекстСообщения = htmlspecialchars($_POST['text']);
if(empty($ОткогоИмя)){
$Ошибка1 = "Не введено имя, повторите ввод";}
if(empty($ОткогоТелефон)){
$Ошибка2 = "Не введен номер телефона, повторите ввод";}
if(empty($ТекстСообщения)){
$Ошибка3 = "Не введен текст сообщения, повторите ввод";}
if(strlen($ОткогоИмя) > 25) {
$Ошибка4 = "Имя не введено либо слишком длинное, макс. 25 символов!";}
if(strlen($ТекстСообщения) > 1000 || strlen($ТекстСообщения) < 50) {
$Ошибка5 = "Текст слишком длинный или короткий, макс. 1000 символов, мин. 50!";}
if(!filter_var($ОткогоПочта,FILTER_VALIDATE_EMAIL)) {
$Ошибка6 = "Некорректно введен E-mail";}
if(!preg_match("/^[0-9]{10,10}+$/",$ОткогоТелефон)) {
$Ошибка7 = "Некорректно введен номер телефона!";}
$ТемаПисьма = 'Письмо с сайта 4stolb.ru';
$Кому = 'remont@4stolb.ru';
$Сообщение ="
<html>
<head>
<title>$ТемаПисьма</title>
</head>
<body>
Имя:$ОткогоИмя<br />
E-mail:$ОткогоПочта<br />
Телефон:$ОткогоТелефон<br />
Сообщение:$ТекстСообщения<br />
";
$Заголовки = "MIME-Version: 1.0\r\n";
$Заголовки .= "Content-type: text/html; charset=utf-8\r\n";
$Заголовки .= "From:Robot 4stolb.ru <robot@4stolb.ru>\r\n";
$ОтправкаПисьма = mail($Кому, $ТемаПисьма,$Сообщение,$Заголовки);
/*тут эти $Ошибка1-7 если false то продолжаем*/
ob_start();
?>
<form method="post" action="contact.php">
Ваше имя:( мах. 25 симв)<br />
<input type="text" name="from" value="<?= $ОткогоИмя; ?>"><br />
Номер:( 9ХХ ХХХ ХХХХ)<br />
<input type="text" name="tel" value="<?= $ОткогоТелефон; ?>"><br />
Ваш E-mail:<br />
<input type="text" name="mail" value="<?= $ОткогоПочта; ?>"><br />
Текст:( мах. 1000 симв)<br />
<textarea name="text" value="<?= $ТекстСообщения; ?>"></textarea><br />
<input type="submit" name="button" value="Отправить">
<input type="reset" name="button" value="Сбросить">
</form>
<?
$ФормаСвязи = ob_get_clean();
echo $ФормаСвязи;}
else {
echo $ОтправкаПисьма;
?></pre>
https://visavi.net/topics/40551/663099
Проблема с отображением
Dmitry Kokorin
Thu, 08 May 2014 12:37:33 +0400
Сообщения
https://visavi.net/topics/40551/663099
-
14. <strong>Zдешний</strong>, я перевел ошибку, но, 40я строка <pre class="prettyprint">
if(empty($ОткогоИмя)){.......}</pre> а 39я <pre class="prettyprint">if(strlen($ОткогоИмя) > 25){......}</pre>если даже значение не введено всё равно ругается...<br>
<br>
<em><span style="font-size:x-small">Добавлено через 06:27 сек.</span></em><br>
вот сам файл, там есть $Ошибка1,$Ошибка2......$Ошибка7<br>
нужно сделать чтобы при true хотябы одной из этих переменных выводилась форма и сообщение об ошибке else аля отправлено
https://visavi.net/topics/40551/663097
Проблема с отображением
Dmitry Kokorin
Thu, 08 May 2014 12:11:13 +0400
Сообщения
https://visavi.net/topics/40551/663097
-
13. <strong>DimmoS</strong>, в 40 строке не наблюдается {. Переводи текст ошибки. strlen кстати возвращает количество байт, для длины строки используется mb_strlen
https://visavi.net/topics/40551/663080
Проблема с отображением
Zдешний
Thu, 08 May 2014 05:09:43 +0400
Сообщения
https://visavi.net/topics/40551/663080
-
еще подскажите чо за.....<br>
(unexpected '{' in............line 40)<br>
щас код скину<br>
<br>
<em><span style="font-size:x-small">Добавлено через 05:28 сек.</span></em><br>
<pre class="prettyprint">
<?php
$ОткогоИмя = trim(htmlspecialchars($_POST['from']));
$ОткогоТелефон = trim(htmlspecialchars($_POST['tel']));
$ОткогоПочта = trim(htmlspecialchars($_POST['mail']));
$ТекстСообщения = trim(htmlspecialchars($_POST['text']));
$ТемаПисьма = 'Письмо с сайта 4stolb.ru';
$Кому = 'remont@4stolb.ru';
$Сообщение ="
<html>
<head>
<title>$ТемаПисьма</title>
</head>
<body>
<table>
<tr>
<td>Имя:</td>
<td>$ОткогоИмя</td>
</tr>
<tr>
<td>E-mail:</td>
<td>$ОткогоПочта</td>
</tr>
<tr>
<td>Телефон:</td>
<td>$ОткогоТелефон</td>
</tr>
<tr>
<td>Сообщение:</td>
<td>$ТекстСообщения</td>
</tr>
</table>
";
$Заголовки = "MIME-Version: 1.0\r\n";
$Заголовки .= "Content-type: text/html; charset=utf-8\r\n";
$Заголовки .= "From: 4stolb.ru <robot@4stolb.ru>\r\n";
$ОтправкаПисьма = mail($Кому, $ТемаПисьма,$Сообщение,$Заголовки);
if(strlen($ОткогоИмя) > 25) {
$Ошибка = "Имя слишком длинное, макс. 25 символов!";
} else {$Ошибка = '';}
if(empty($ОткогоИмя) {
$Ошибка = "Не введено имя!";
} else {$Ошибка = '';}
if(strlen($ТекстСообщения) > 1000 || ($ТекстСообщения) < 50) {
$Ошибка = "Текст слишком длинный или короткий, макс. 1000 символов, мин. 50!";
} else {$Ошибка = '';}
if(!filter_var("$ОткогоПочта",FILTER_VALIDATE_EMAIL)) {
$Ошибка = "Некорректно введен E-mail!";
} else {$Ошибка = '';}
if(!preg_match("/^[0-9]{10,10}+$/",$ОткогоТелефон)) {
$Ошибка = "Некорректно введен номер телефона!";
} else {$Ошибка = '';}
echo $Ошибка;
//echo $ОтправкаПисьма;
?>
</pre>
https://visavi.net/topics/40551/663062
Проблема с отображением
Dmitry Kokorin
Wed, 07 May 2014 21:20:06 +0400
Сообщения
https://visavi.net/topics/40551/663062
-
и в шаблоне заменим <br>
"<?php<br>
$Сообщение = $POST['message'];<br>
if(!empty($Сообщение)){<br>
echo $Сообщение;}<br>
else{<br>
?> "<br>
<br>
на<br>
<br>
<pre class="prettyprint">
<?php if(isset($_SESSION['message'])){ ?>
<h1><?=$_SESSION['message']?></h1>
<?php unset($_SESSION['message']); } ?>
<?php $text = (isset($_GET['text'])):htmlspecialchars(trim($_GET['text'])):'';?></pre>
<br>
а то увидел, что у тебя $_POST['message'] обрабатывается<br>
<br>
<em><span style="font-size:x-small">Добавлено через 03:06 сек.</span></em><br>
неидеально, могут быть ошибки, потому что тут в форме ввода начеркал<img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile">
https://visavi.net/topics/40551/662602
Проблема с отображением
Zдешний
Tue, 29 Apr 2014 11:05:04 +0400
Сообщения
https://visavi.net/topics/40551/662602
-
давай так напишем (шаблон оставим пока в покое):<br>
<br>
<pre class="prettyprint">
<?php
if($_POST){
function redirect($url, $message = false){
if ($message){
$_SESSION['message'] = $message;
}
header('Location: '.$url);
exit();
}
$abonent = "наш_адрес_мыла";
try{
$subject = (isset($_POST['subject']))?htmlspecialchars(trim($_POST['subject'])):'';
$name = (isset($_POST['subject']))?htmlspecialchars(trim($_POST['name'])):'';
$mail = (isset($_POST['subject']))?htmlspecialchars(trim($_POST['mail'])):'';
$tel = (isset($_POST['subject']))?htmlspecialchars(trim($_POST['tel'])):'';
$text = (isset($_POST['subject']))?htmlspecialchars(trim($_POST['text'])):'';
if($subject == '')
throw new Exception("Вы не ввели тему письма!");
if($name == '')
throw new Exception("Вы не ввели ваше имя!");
if($text == '')
throw new Exception("Вы не ввели текст письма!");
if(!preg_match('/^\+?[0-9]{7,30}$/', $tel))
throw new Exception("Введите номер телефона правильно!");
$mail = filter_var($mail, FILTER_VALIDATE_EMAIL);
if($mail == FALSE)
throw new Exception("Введите email!");
$letter="<h3>$subject</h3><br /><h4>$name<br />$mail<br />$tel<br />$text</h4>";
$head = 'MIME-Version: 1.0' . "\r\n";
$head .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$head .= 'From: $name<$mail>' . "\r\n";
if(!mail($abonent, $subject, $letter, $head))
throw new Exception("Произошла ошибка при отправке письма!");
}
catch(Exception $ex){
redirect("contact.php?text=".$text, $ex->getMessage());}
redirect("contact.php", "Сообщение успешно отправлено!");
}
</pre>
https://visavi.net/topics/40551/662601
Проблема с отображением
Zдешний
Tue, 29 Apr 2014 11:04:38 +0400
Сообщения
https://visavi.net/topics/40551/662601
-
офигеть какой код о_О<br>
"if(empty($Маил)){<br>
echo "Не введен E-mail<br />вернитесь назад и повторите ввод<br /><br>
<form method="post" action="contact.php"><br>
<input type="hidden" name="message" value="Введите E-mail"><br>
<input type="hidden" name="name" value="$Имя"><br>
<input type="hidden" name="tel" value="$Тел"><br>
<input type="hidden" name="text" value="$Текст"><br>
<input type="submit" name="submit" value="Вернуться">";<br>
</form><br>
exit();<br>
} "<br>
<br>
зачем такие нагромождения?
https://visavi.net/topics/40551/662600
Проблема с отображением
Zдешний
Tue, 29 Apr 2014 11:04:01 +0400
Сообщения
https://visavi.net/topics/40551/662600
-
Это contact.php<br>
<pre class="prettyprint"><center><b>
<?php
$Сообщение = $POST['message'];
if(!empty($Сообщение)){
echo $Сообщение;}
else{
?>
Вы можете связаться с нами следующими способами:<br />
<table>
<tr>
<td>Тел:</td>
<td>[quote][quote][quote][/quote][/quote][/quote]</td>
</tr>
<tr>
<td>E-mail:</td>
<td><a href="mailto:remont@4stolb.ru">remont@4stolb.ru</a></td>
</tr>
</table>
<br />
или заполнив форму ниже:<br />
<form method="post" action="sendmail.php">
<input type="hidden" name="subject" value="Письмо с сайта 4stolb.ru">
<table>
<tr>
<td>
Ваше имя:
</td>
<td>
<input type="text" name="name" maxlenght="20"><br />
</td>
</tr>
<tr>
<td>
E-mail:
</td>
<td>
<input type="text" name="mail" maxlenght="30" value="mail@example.com"><br />
</td>
</tr>
<tr>
<td>
Номер:
</td>
<td>
<input type="text" name="tel" maxlenght="15" value="+7 XXX XXX XXXX"><br />
</td>
</tr>
<tr>
<td>
Текст:
</td>
<td>
<textarea name="text" maxlenght="1000"></textarea>
</td>
</tr>
<tr>
<td>
</td>
<td>
<input type="submit" name="submit" value="Отправить"><br />
</td>
</tr>
</table>
</form>
</b>
<?php
}
?></pre>
https://visavi.net/topics/40551/662598
Проблема с отображением
Dmitry Kokorin
Tue, 29 Apr 2014 10:11:23 +0400
Сообщения
https://visavi.net/topics/40551/662598
-
<pre class="prettyprint">
if(empty($Имя)){
echo "Не введено имя<br />вернитесь назад и повторите ввод<br />
<form method="post" action="contact.php">
<input type="hidden" name="message" value="Введите имя">
<input type="hidden" name="mail" value="$Маил">
<input type="hidden" name="tel" value="$Тел">
<input type="hidden" name="text" value="$Текст">
<input type="submit" name="submit" value="Вернуться">";
</form>
exit();
}
if(empty($Маил)){
echo "Не введен E-mail<br />вернитесь назад и повторите ввод<br />
<form method="post" action="contact.php">
<input type="hidden" name="message" value="Введите E-mail">
<input type="hidden" name="name" value="$Имя">
<input type="hidden" name="tel" value="$Тел">
<input type="hidden" name="text" value="$Текст">
<input type="submit" name="submit" value="Вернуться">";
</form>
exit();
}
if(empty($Текст)){
echo "Не введен текст<br />вернитесь назад и повторите ввод<br />
<form method="post" action="contact.php">
<input type="hidden" name="message" value="Введите текст">
<input type="hidden" name="name" value="$Имя">
<input type="hidden" name="tel" value="$Тел">
<input type="hidden" name="mail" value="$Маил">
<input type="submit" name="submit" value="Вернуться">";
</form>
exit();
}
mail($Кому, $Тема, $Письмо, $Заголовок);
if(!mail){ echo "Произошла ошибка при отправке письма";}
exit();
?></pre>
<br>
<em><span style="font-size:x-small">Добавлено через 01:16 сек.</span></em><br>
А ты не можешь пару минут подождать?<br>
<br>
<em><span style="font-size:x-small">Добавлено через 02:09 сек.</span></em><br>
...это в шаблоне(и там косяков нет! )
https://visavi.net/topics/40551/662597
Проблема с отображением
Dmitry Kokorin
Tue, 29 Apr 2014 10:03:53 +0400
Сообщения
https://visavi.net/topics/40551/662597
-
6. <strong>DimmoS</strong>, ты видимо смеёшься. спасибо, оценил<br>
<br>
<em><span style="font-size:x-small">Добавлено через 01:03 сек.</span></em><br>
где это - "Верхний блок<br>
$Имя<br>
$Откого<br>
$Тел<br>
$Текст '; $Заголовок = 'MIME-Version: 1.0' . "\r\n"; $Заголовок .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $Заголовок .= "From: $Имя<$Откого>" . "\r\n"; if(empty($Имя)){ echo "Не введено имя<br>
вернитесь назад и повторите ввод<br>
"; exit(); }; if(empty($Маил)){ echo "Не введен E-mail<br>
вернитесь назад и повторите ввод<br>
"; exit(); }; if(empty($Текст)){ echo "Не введен текст<br>
вернитесь назад и повторите ввод<br>
"; exit(); }; mail($Кому, $Тема, $Письмо, $Заголовок); if(!mail){ echo "Произошла ошибка при отправке письма";} exit(); ?><br>
Нижний блок "<br>
<br>
либо это в шаблоне, либо что ещё. автор, ты не даёшь нам нужной информации и просишь помощи. хз что ты добиваешься
https://visavi.net/topics/40551/662596
Проблема с отображением
Zдешний
Tue, 29 Apr 2014 10:01:33 +0400
Сообщения
https://visavi.net/topics/40551/662596
-
Вот тебе весь код:<br>
sendmail.php<br>
<pre class="prettyprint"><?php
trim($_POST['subject']);
trim($_POST['name']);
trim($_POST['mail']);
trim($_POST['tel']);
trim($POST['text']);
htmlspecialchars($_POST['subject']);
htmlspecialchars($_POST['name']);
htmlspecialchars($_POST['mail']);
htmlspecialchars($_POST['tel']);
htmlspecialchars($_POST['text']);
$Тема=$_POST['subject'];
$Имя=$_POST['name'];
$Откого=$_POST['mail'];
$Тел=$_POST['tel'];
$Текст=$_POST['text'];
$Письмо="<h3>$Тема</h3><br /><h4>$Имя<br />$Откого<br />$Тел<br />$Текст</h4>";
$Заголовок = 'MIME-Version: 1.0' . "\r\n";
$Заголовок .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$Заголовок .= 'From: $Имя<$Откого>' . "\r\n";
</pre>
https://visavi.net/topics/40551/662595
Проблема с отображением
Dmitry Kokorin
Tue, 29 Apr 2014 09:57:56 +0400
Сообщения
https://visavi.net/topics/40551/662595
-
<blockquote class="blockquote"><strong>DimmoS</strong> (29 Апреля 2014 / 10:23)<br>
2. <strong>Zдешний</strong>, у меня весь движок на<br>
UTF-8, почему бы мне не использовать русские переменные? Да и это впринципе ни на что не влияет! Лучше подскажи в чем косяк</blockquote>
а тебе это чем то поможет? ведь даже не весь код даёшь. во-первых не $POST_, а $_POST<br>
<br>
<em><span style="font-size:x-small">Добавлено через 01:19 сек.</span></em><br>
вот без проверок всяких накидал код:<br>
<pre class="prettyprint"><?php
header('Content-Type: text/html; charset=utf-8');
if($_POST){
$Кому = '***@mail.pp';
trim($_POST['subject']);
trim($_POST['name']);
trim($_POST['mail']);
trim($_POST['tel']);
trim($_POST['text']);
htmlspecialchars($_POST['subject']);
htmlspecialchars($_POST['name']);
htmlspecialchars($_POST['mail']);
htmlspecialchars($_POST['tel']);
htmlspecialchars($_POST['text']);
$Тема = $_POST['subject'];
$Имя = $_POST['name'];
$Откого = $_POST['mail'];
$Тел = $_POST['tel'];
$Текст = $_POST['text'];
$Письмо = "
<html>
<head>
<title>$Тема</title>
</head>
<body>
$Имя<br />
$Откого<br />
$Тел<br />
$Текст
</body>
</html>
";
$Заголовок = 'MIME-Version: 1.0' . "\r\n";
$Заголовок .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$Заголовок .= "From: $Имя<$Маил>" . "\r\n";
mail($Кому, $Тема, $Письмо, $Заголовок);
if(!mail){ die("Промазали!");}
die("OK!");}
?>
<form method="post">
Тема:
<input type="text" name="subject" value="" /><br />
Имя:
<input type="text" name="name" value="" /><br />
От кого:
<input type="text" name="mail" value="" /><br />
Тел:
<input type="text" name="tel" value="" /><br />
Текст:
<input type="text" name="text" value="" /><br />
<input type="submit" value="Погнали" />
</form></pre>
<br>
всё работает ок
https://visavi.net/topics/40551/662589
Проблема с отображением
Zдешний
Tue, 29 Apr 2014 09:21:35 +0400
Сообщения
https://visavi.net/topics/40551/662589
-
2. <strong>Zдешний</strong>, у меня весь движок на<br>
UTF-8, почему бы мне не использовать русские переменные? Да и это впринципе ни на что не влияет! Лучше подскажи в чем косяк
https://visavi.net/topics/40551/662587
Проблема с отображением
Dmitry Kokorin
Tue, 29 Apr 2014 08:23:50 +0400
Сообщения
https://visavi.net/topics/40551/662587
-
2. <strong>Zдешний</strong>, почему бы и нет? Если человеку так удобнее ))
https://visavi.net/topics/40551/662586
Проблема с отображением
DiNo
Tue, 29 Apr 2014 07:59:20 +0400
Сообщения
https://visavi.net/topics/40551/662586
-
переменные русским языком? оригинально
https://visavi.net/topics/40551/662584
Проблема с отображением
Zдешний
Tue, 29 Apr 2014 05:03:09 +0400
Сообщения
https://visavi.net/topics/40551/662584