@Alex_87

Почему не получается отправить код ajax запросом?

Здравствуйте! Прошу помочь мне, поскольку уже долго мучаюсь с этой формой... Не получается отправить форму без перезагрузки страницы.
<form id="form" method="post" class="popupform">
                     <input type="text" placeholder="Ваше имя" name="name"  value="<?=$_POST['name']?>"  />
                     <p class="err n" style="color:red"><?=$err['name']?></p>
                     <input type="e-mail" placeholder="Ваша почта" name="email"  value="<?=$_POST['email']?>" />
                     <p class="err e" style="color:red"><?=$err['email']?></p>
                     <input type="text" placeholder="Ваш Skype"  name="skype"  value="<?=$_POST['skype']?>" />
                     <textarea name="sms" id="" cols="5" rows="10" placeholder="Ваше сообщение" value="<?=$_POST['sms']?>"></textarea>

                     <div>
                         <button>Оставьте заявку</button>
                     </div>
                 </form>

$(document).ready(function() {
	$('#form').submit(function() { 
		if (document.form.name.value == '' || document.form.email.value == '' ) {
			valid = false;
			return valid;
		}
		$.ajax({
			type: "POST",
			url: "form.php",
			data: $(this).serialize()
		}).done(function() {
			alert('Спасибо');
		});
		return false;
	});
});

$to = 'a.kovalkovsky@gmail.com';
                     $tema = 'Новое сообщение';
                     $name = strip_tags(trim($_POST['name']));
                     $email = strip_tags(trim($_POST['email']));
                     $skype = strip_tags(trim($_POST['skype']));
                     $sms = strip_tags(trim($_POST['sms']));
                     $message = "Имя пользователя: ".$name."\r\n";
                     $message .= "Почта: ".$email."\r\n";
                     $message .= "Skype: ".$skype."\r\n";
                     $message .= "Сообщение: ".$sms."\r\n";
                    
                        $tema = "=?utf-8?B?".base64_encode($subject)."?=";
                        $headers = "From: $from\r\nReply-to: $from\r\nContent-type:text/plain; charset=utf-8\r\n";
                        mail($to, $tema, $message, $headers);

И почему подключив скрипт:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
у меня вышло:
59d6dafd3cd1c786465040.png
  • Вопрос задан
  • 275 просмотров
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
И почему ... у меня вышло: [кракозябры]

Потому что кодировка страницы отличается от кодировки того, что вы подключили.
Самый простой способ избежать подобного - использовать везде UTF-8
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы