Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > Общие вопросы Web
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.07.2017, 16:42   #1
DanDiablo
Пользователь
 
Аватар для DanDiablo
 
Регистрация: 25.08.2015
Сообщений: 55
Печаль Не работает reCaptcha с ajax

Доброго времени суток, дамы и господа!

Сразу прошу прощения, если задаю вопрос, на который уже где то есть ответ.
Если он есть, то я его тут не увидел, искал по слову "reCaptcha".
Можно тыкнуть носом, я разрешаю.
И так, у меня есть сайт, с которого меня забросали спамом напрочь.
Решил поставить reCaptcha 2 от гугла, не поставилась.
Точнее, reCaptcha есть, но на отправку писем она не влияет.
Да, сайт на CMS, форму писал сам, js & php взяты из интернета и обучающим материалов.
Сам знаком с js & jQ (читал пару книг, но своего достойного ни чего не писал), с php дел вообще не имел (кроме формы, она рабочая).

Ой, забыл сказать, что буржуйским языком не владею, прошу на документацию не ссылаться.

Вот код js:

Код:
   
jQuery(document).ready(function() {
	jQuery(function(){
		jQuery("#tel").mask("+7-999-999-99-99");
		}),
	jQuery("#myForm").submit(function() {
		var formData = jQuery(this).serialize();
    formData['g-recaptcha-response'] = grecaptcha.getResponse();
		jQuery.ajax({
			type: "POST",
			url: "mail/mail.php",
			data: formData
		}).done(function() {
			jQuery(this).find("input").val("");
			jQuery(".knopka").html("Спасибо, голубь выслан!");
			jQuery("#result").html("Спасибо за письмо!");
			jQuery("#imgs").show("slow");
			jQuery("#myForm").trigger("reset");
			jQuery(".knopka").val('Отправляется');
           jQuery(".knopka").prop("disabled", "true");
		});
		return false;
	});
});
Вот код php:

Код:
                       if($_SERVER['REQUEST_METHOD']== 'POST'){
			
			if (empty($_POST['g-recaptcha-response'])){
		 	 exit('Error');
		 }
			
			$url = 'https://www.google.com/recaptcha/api/siteverify';
			
			$secret='секретный ключик';
			
			$recaptcha = $_POST['g-recaptcha-response'];
			
			$ip = $_SERVER['REMOTE_ADDR'];
			
			$url_data = $url.'?secret='.$secret.'&response='.$recaptcha.'&remoteip='.$ip;
			
			$curl = curl_init();
			
			curl_setopt($curl, CURLOTP_URL, $url_data);
			
			curl_setopt($curl, CURLOTP_SSL_VERIFYPEER, FALSE);
			
			curl_setopt($curl, CURLOTP_RETURNTRANSFER, 1);
			
			$res = curl_exec($curl);
			
			curl_close($curl);
			
			$res = json_decode($res);

    	if($res->success) {
    		
       	if (isset($_POST['name'])) {$name = $_POST['name'];}
		if (isset($_POST['user_email'])) {$user_email = $_POST['user_email'];}
		if (isset($_POST['tema'])) {$tema = $_POST['tema'];}
		if (isset($_POST['text'])) {$text = $_POST['text'];}
		if (isset($_POST['tel'])) {$tel = $_POST['tel'];}

		$to = "моя почта";
		$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
		$headers .= "From: \"".$name."\" <".$email.">\r\n";
		$headers .= "Reply-To: $user_email\r\n";
		$subject = "мой сайт, тема: $tema";
		$message = "<b>Имя отправителя:</b> $name <br>
								<b>Почта отправителя:</b> $user_email<br>
								<b>Телефон отправителя:</b> $tel <br>
								<b>Сообщение:</b> <br> $text";
		$send = mail ($to, $subject, $message, $headers);
       	
    	}else{
			
		
		exit('Error');

		}
  		
	}
Блин, по логике все кажется правильным, а все разом не работает.

Что не так? Можно ссылку на рабочий пример?

Благодарю за внимание!

Последний раз редактировалось DanDiablo; 26.07.2017 в 16:46.
DanDiablo вне форума Ответить с цитированием
Старый 28.07.2017, 07:16   #2
DanDiablo
Пользователь
 
Аватар для DanDiablo
 
Регистрация: 25.08.2015
Сообщений: 55
По умолчанию

Ну, дамы и господа, даже предположений ни каких нет? Куда смотреть?
DanDiablo вне форума Ответить с цитированием
Старый 28.07.2017, 08:05   #3
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от DanDiablo Посмотреть сообщение
не работает
Цитата:
Сообщение от DanDiablo Посмотреть сообщение
Куда смотреть?
сюда
https://learn.javascript.ru/devtools
https://learn.javascript.ru/debugging-chrome
http://phpfaq.ru/debug
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 29.07.2017, 08:52   #4
DanDiablo
Пользователь
 
Аватар для DanDiablo
 
Регистрация: 25.08.2015
Сообщений: 55
По умолчанию

Ну да, ну да... Похоже, я один с такой ерундой встретился.
DanDiablo вне форума Ответить с цитированием
Старый 06.08.2017, 13:10   #5
DanDiablo
Пользователь
 
Аватар для DanDiablo
 
Регистрация: 25.08.2015
Сообщений: 55
По умолчанию

При попытке решить эту проблему, нашлась еще одна. Матрешки, е мое!
В фаерфоксе на месте капчи красненькая такая надпись: "Не верный домен ключа".
Хоть домен у меня в кирилице, но написан он в гугле в Punycode.
В хроме капча есть, но по прежнему не рабочая.
Даишь фантастишь просто!
DanDiablo вне форума Ответить с цитированием
Старый 07.08.2017, 17:49   #6
DanDiablo
Пользователь
 
Аватар для DanDiablo
 
Регистрация: 25.08.2015
Сообщений: 55
По умолчанию

Доигрался, вообще письма приходить перестали.
И ни кто рабочий пример не показал, как будто я один капчу поставить пытаюсь...
DanDiablo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не работает ajax + php sinestro PHP 1 12.10.2014 22:23
jQuery AJAX не работает таймаут hon JavaScript, Ajax 1 02.02.2014 13:45
Не работает ajax livesport JavaScript, Ajax 2 04.04.2012 07:59
reCaptcha Dominatorsha Работа с сетью в Delphi 2 11.01.2011 23:10
AJAX не работает в IE dronsapun JavaScript, Ajax 5 22.08.2010 18:41