Я интегрировал код PHP, чтобы пинговать карту сайта в Google и Bing. Код выполняется отлично, но это факт, если я инициирую запрос из ajax вызова. Он не возвращается обратно
Ниже приведен код Jquery, который я использую, чтобы сделать ajax вызов
$("body").on('click', 'button#sitemap_google_submit', function(event){
toastr.info("Would require few seconds, Please wait, do not refresh Page..",
"Submitting Sitemap to Google!",
{ progressBar:!0,
showMethod:"slideDown",
hideMethod:"slideUp",
timeOut:2e3,
preventDuplicates: true,
positionClass: "toast-bottom-right"
}
);
$("button#sitemap_google_submit").attr("disabled", true);
$("button#sitemap_google_submit").html("<i class='ft-loader spinner'></i> Submitting to Google..");
$.ajax({
url: '/bypasser/modules/seoController.php',
type: 'POST',
dataType: 'JSON',
data: {type: 'submit', console: 'google'},
})
.done(function(resp) {
$("button#sitemap_google_submit").attr("disabled", false);
$("button#sitemap_google_submit").html("<i class='fa fa-google fa-lg'></i> Submit to Google");
toastr[resp.type](resp.message,
resp.heading,
{ showMethod:"slideDown",
hideMethod:"slideUp",
preventDuplicates: true,
positionClass: "toast-bottom-right"
});
});
});
на стороне PHP, который я использую по запросу ниже
<?php
include("appController.php");
$reqType = preg_replace("/[^a-zA-Z]/", "", $_REQUEST['type']);
class seoController Extends appController
{
public function submitGoogle($url)
{
$url = "http://www.google.com/webmasters/sitemaps/ping?sitemap=".$this->websiteBaseURL().$url;
$returnCode = $this->myCurl($url);
if($returnCode == 200) {
echo json_encode(array("type" => "success",
"heading" => "Success!",
"message" => "Sitemap Submitted to Google!!")
);
}else{
echo json_encode(array("type" => "warning",
"heading" => "Warning!",
"message" => "Problem occured while submitted SiteMap, try again after Sometime!"
)
);
}
}
function myCurl($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER , true); // we want headers
curl_setopt($ch, CURLOPT_NOBODY, true); // we don't need body
curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return $httpCode;
}
}
$seoController = new seoController();
if($reqType == "submit" &&
preg_replace("/[^a-z]/", "", $_POST['console']) == "google")
$seoController->submitGoogle("sitemap.xml");
?>
Кодирование JSON отлично отображается на панели предварительного просмотра вкладки сети элемента inspect, но почему-то не возвращает ответ на ajax, в чем проблема?