Всем привет ребята. Скрипт
(function($) {
$(function() {
jQuery('#quote_form').on('submit', function(e){
e.preventDefault();
jQuery('.btn ').attr('disabled','disabled');
jQuery('#quote_form').addClass('form_sending');
var request = {
option : 'com_ajax',
module : 'c_form',
method : 'sendMail',
format : 'row',
data: jQuery('#quote_form').serialize(),
src: window.location.href,
};
jQuery.ajax({
method: 'POST',
data: request,
})
.success(function(response){
console.log(response);
//jQuery(location).attr('href', window.location.origin + '/thanks-you-for-contacting');
});
});
});
})(jQuery);
<?php
require_once '../../configuration.php';
$jconfig = new JConfig();
$host = $jconfig->host;
$dbname = $jconfig->db;
$username = $jconfig->user;
$password = $jconfig->password;
$dbprefix = $jconfig->dbprefix;
$db = mysqli_connect($host, $username, $password, $dbname);
if (!$db) {
die('Ошибка соединения: ' . mysqli_error());
}
$stmt = $db->prepare('SELECT params FROM ' . $dbprefix .'template_styles WHERE template = "easy_moving"');
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();
$params = json_decode($row['params']);
mysqli_close($db);
$to = $params->email;
$subject = $_POST['subject'];
$mailheaders = "Content-type:text/html;charset=utf-8rn";
$mailheaders .= "From: SiteRobot <noreply@easy-moving.ca/>rn";
$mailheaders .= "Reply-To: [email]noreply@easy-moving.ca[/email]/";
if ($subject == 'Free Quote') {
$message =
'<table>
<tbody>
<tr>
<td>Moving From</td>
<td>'. $_POST['movingfrom'] .'</td>
</tr>
<tr>
<td>Moving To</td>
<td>'. $_POST['movingto'] .'</td>
</tr>
<tr>
<td>Contact Phone</td>
<td>'. $_POST['phone'] .'</td>
</tr>
<tr>
<td>Full Name</td>
<td>'. $_POST['fullname'] .'</td>
</tr>
<tr>
<td>Email Address</td>
<td>'. $_POST['email'] .'</td>
</tr>
<tr>
<td>Moving Date</td>
<td>'. $_POST['movingdate'] .'</td>
</tr>
<tr>
<td>What Size?</td>
<td>'. $_POST['whatsize'] .'</td>
</tr>
<tr>
<td>How did you hear about us?</td>
<td>'. $_POST['howdid'] .'</td>
</tr>
</tbody>
</table>';
}
elseif ($subject == 'Free Estimate Online') {
$message =
'<table>
<tbody>
<tr>
<td>Full Name</td>
<td>'. $_POST['fullname'] .'</td>
</tr>
<tr>
<td>Email Address</td>
<td>'. $_POST['email'] .'</td>
</tr>
<tr>
<td>Contact Phone</td>
<td>'. $_POST['phone'] .'</td>
</tr>
<tr>
<td>Moving From</td>
<td>'. $_POST['movingfrom'] .'</td>
</tr>
<tr>
<td>Moving To</td>
<td>'. $_POST['movingto'] .'</td>
</tr>
<tr>
<td>Moving Date</td>
<td>'. $_POST['movingdate'] .'</td>
</tr>
<tr>
<td>Move Size</td>
<td>'. $_POST['movesize'] .'</td>
</tr>
<tr>
<td>Truck Size</td>
<td>'. $_POST['trucksize'] .'</td>
</tr>
<tr>
<td>Сomments</td>
<td>'. $_POST['comments'] .'</td>
</tr>
</tbody>
</table>';
} else {
die('error');
}
$res = mail($to, $subject, $message, $mailheaders);
echo $res;
?>zz
Супер долго выполняется, Я уже не знаю что с ним делать.
А проблема в том что пока он выполняется пользователь еще раз 15 жмет на кнопку, думаю что не работает и по итогу приходит 9999 сообщений от пользователя, в зависимость от агрессии.
Вышел пока из положения тупо ее заморозить, но при этом и редирект страдает.
Друзья подскажите пожалуйста что может быть и как оптимизировать бы это можно?
Может как то асинхронно можно?
Ссылка
https://easy-moving.ca/get-free-quote