- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Подскажите пожалуйста, появилась проблема в коде, - отправки формы обратной связи,
После добавления в нее капчи, причем капча работает как надо, и письма отправляются и получаются, но вводимые данные с сайта почему то не сохраняются в форме и не присылаются.
Присылаются пустые заголовки форм, без заполненных в них данных с сайта, хотя до добавления кода капчи, все работало как надо.
Чтобы запустить капчу добавил один файл на сайт + шрифт +фон и внес дополнения в двух файлах:
Добавил на сайт файл: ( capcha.php) вот код:
<?php
$letters = 'ABCDEFGKIJKLMNOPQRSTUVWXYZ'; // алфавит
$caplen = 6; //длина текста
$width = 120; $height = 40; //ширина и высота картинки
$font = 'comic.ttf';//шрифт текста
$fontsize = 14;// размер текста
header('Content-type: image/png'); //тип возвращаемого содержимого (картинка в формате PNG)
$im = imagecreatetruecolor($width, $height); //создаёт новое изображение
imagesavealpha($im, true); //устанавливает прозрачность изображения
$bg = imagecolorallocatealpha($im, 0, 0, 0, 127); //идентификатор цвета для изображения
imagefill($im, 0, 0, $bg); //выполняет заливку цветом
putenv( 'GDFONTPATH=' . realpath('.') ); //проверяет путь до файла со шрифтами
$captcha = '';//обнуляем текст
for ($i = 0; $i < $caplen; $i++)
{
$captcha .= $letters[ rand(0, strlen($letters)-1) ]; // дописываем случайный символ из алфавила
$x = ($width - 20) / $caplen * $i + 10;//растояние между символами
$x = rand($x, $x+4);//случайное смещение
$y = $height - ( ($height - $fontsize) / 2 ); // координата Y
$curcolor = imagecolorallocate( $im, rand(0, 100), rand(0, 100), rand(0, 100) );//цвет для текущей буквы
$angle = rand(-25, 25);//случайный угол наклона
imagettftext($im, $fontsize, $angle, $x, $y, $curcolor, $font, $captcha[$i]); //вывод текста
}
// открываем сессию для сохранения сгенерированного текста
session_start();
$_SESSION['capcha'] = $captcha;
imagepng($im); //выводим изображение
imagedestroy($im);//отчищаем память
?>
И внес изменения, добавил код (выделен красным цветом) в имеющиеся файлы на сайте
В файл (send1.php) вот код:
<?
$TO = "my@мой сайт.ru;
$SUBJECT = "Письмо с мой сайт";
$BODY = "ФИО: $t1\n"
. "Телефон: $t2\n"
. "Оборудование: $t3\n"
. "Дата посещения: $t4\n"
. "Адрес осмотра: $t5\n"
. "Желаемое время: $t6\n";
$header ="From: www.мойсайт.ru <www.мойсайт.ru>\n"
."Content-type: text/plain;"
." charset=\"windows-1251\""
." Content-Transfer-Encoding: 8bit";
session_start();
if($_POST['capcha'] != $_SESSION['capcha']) {
echo "Текст с картинки введен не верно! <br> <a href='javascript:history.go(-1);'>« Проверьте еще раз правильность ввода</a>";
unset($_SESSION['capcha']);
exit();
}
ini_set(sendmail_from, $TO);
if (mail($TO, $SUBJECT, $BODY, $header))
{
echo "<b>Спасибо.</b><br>Ваше сообщение очень важно для нас.<br>Если оно требует ответа и Вы оставили свои координаты, мы свяжемся с Вами максимально быстро.<br><a href='index.php'>Закрыть окно</a>";
} else {
echo " ОШИБКА ";
}
?>
и добавил код (выделен красным цветом)на страницу в форму отправки (мой сайт.html) вот код:
<form method="POST" action="send1.php" name="SEND" >
<table border="0" width="580" cellspacing="0" cellpadding="2">
<tr>
<td colspan="2">
</td>
</tr>
<tr>
<td align="right"> </td>
<td> </td>
</tr>
<tr>
<td align="right">Ваше имя: </td>
<td><input type="text" name="T1" size="40"></td>
</tr>
<tr>
<td align="right">Контактный телефон: </td>
<td><input type="text" name="T2" size="40"></td>
</tr>
<tr>
<td align="right">Консультация по:</td>
<td><select name="T3">
<option value="выберете">выберете</option>
<option value="Кондиционированию">Кондиционированию</option>
<option value="Вентиляции">Вентиляции</option>
<option value="Кондиционированию и вентиляции">Кондиционированию и вентиляции</option>
<option value="Сервисному обслуживанию ">Сервисному обслуживанию </option>
<option value="Ремонту и диагностики ">Ремонту и диагностики </option>
</select></td></tr>
<tr>
<td align="right">Дата посещения: </td>
<td><input type="text" name="T4" size="40"></td>
</tr>
<tr>
<td align="right">Адрес осмотра: </td>
<td><input type="text" name="T5" size="40"></td>
</tr>
<tr>
<td align="right">Желаемое время: </td>
<td><input type="text" name="T6" size="40"></td>
</tr>
<tr>
<td align="right"></td>
<td>
<img style=" background: url('bg_capcha.png');" src = "captcha.php" width="120" height="40">
</td>
</tr>
<tr>
<td align="right">Введите код с картинки: </td>
<td><input type="text" name="capcha"></td>
</tr>
<tr>
<td align="right"> </td>
<td> <input type="submit" value="Оставить заявку" onclick="chek_field()"> </td>
</tr>
</table>
</form>
<script>
function chek_field()
{
var currentForm = document.SEND;
var T1 = currentForm.T1.value;
var T2 = currentForm.T2.value;
var T3 = currentForm.T3.value;
var T4 = currentForm.T4.value;
var T5 = currentForm.T5.value;
var T6 = currentForm.T6.value;
var url
url='t1='+T1+'&t2='+T2+'&t3='+T3+'&t4='+T4+'&t5='+T5+'&t6='+T6;
}
</script>
Люди знающие помогите !!!
Не могу разобраться что не так в коде, почему не сохраняются и не присылаются на почту данные вводимые с сайта - ? до добавления капчи все ведь работало как надо
Проверяйте название полей, в соответствии значением параметра name соответствующих полей формы.
Код неполный. Как значение из формы присваивается переменной, например в этой строке $BODY = "ФИО: $t1\n" ?
Капча не очень хороший вариант, распознается ботами + для посетителей неудобно.
Посмотрите вариант CleanTalk.ru