我想从我的ajax代码中获得一些帮助。我想在index.html中移动curl代码以使用ajax,但我不知道如何将curl转换为ajax代码。
的index.html:
<script>
$button.click(function(e)
{
e.preventDefault();
var emptyMail = true;
var email = $emailInput.val().trim();
var $emailInput_1 = $("#email").val();
$(document).ready(function()
$(this).val("SUBMITTING...");
$("form").submit();
$.ajax({
url: "post.php",
type: 'POST'
});
});
</script>
这是post.php
<?php
function _curl($url, $post = "", $headers = "")
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36");
curl_setopt($ch, CURLOPT_REFERER, $url);
curl_setopt($ch, CURLOPT_POST, ($post && is_array($post))? 1 :0);
if ($post && is_array($post))
{
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
}
if ($headers && is_array($headers))
{
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_COOKIEFILE, "/dev/null");
curl_setopt($ch, CURLOPT_COOKIEJAR, "/dev/null");
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
return $result;
curl_close($ch);
}
if ($_POST)
{
_curl("http://example.com/land/formFillReturnV5b.php", array(
"name"=>"groups_name",
"email"=>$_POST['email'],
"phone"=>"",
"ip"=> $_SERVER['SERVER_ADDR'],
"reff"=>"",
"page"=>"Q6",
"link"=>"https://example.com/meme",
"notes"=>"",
"MID"=>"39918",
"LID"=>"",
"ARData"=>"meme",
"cookie"=>""), array("X-NewRelic-ID" => "VQQBVl9aDRABUFJbAQkOUQ==", "X-Requested-With" => "XMLHttpRequest", "Content-Type" => "application/x-www-form-urlencoded; charset=UTF-8"));
}
?>
我想这样做:
<script>
$button.click(function(e)
{
e.preventDefault();
var emptyMail = true;
var email = $emailInput.val().trim();
var $emailInput_1 = $("#email").val();
$(document).ready(function()
$(this).val("SUBMITTING...");
$("form").submit();
$.ajax({
url: "http://example.com/land/formFillReturnV5b.php",
type: 'POST',
"name"=>"groups_name",
"email"=>$_POST['email'],
"phone"=>"",
"ip"=> $_SERVER['SERVER_ADDR'],
"reff"=>"",
"page"=>"Q6",
"link"=>"https://example.onlinesalespro.com/meme",
"notes"=>"",
"MID"=>"39918",
"LID"=>"",
"ARData"=>"meme",
"cookie"=>""), array("X-NewRelic-ID" => "VQQBVl9aDRABUFJbAQkOUQ==", "X-Requested-With" => "XMLHttpRequest", "Content-Type" => "application/x-www-form-urlencoded; charset=UTF-8"));
});
});
</script>
当我尝试它时,它将无法正常工作。如果您可以向我展示一个示例,我可以使用ajax代码将数据发送到服务器,这将是非常好的。
答案 0 :(得分:0)
示例代码
<script>
$button.click(function(e)
{
e.preventDefault();
var emptyMail = true;
var email = $emailInput.val().trim();
var $emailInput_1 = $("#email").val();
$(document).ready(function()
$(this).val("SUBMITTING...");
$("form").submit();
$.ajax({
url: "http://example.com/land/formFillReturnV5b.php",
type: 'POST',
data: {name: "groups_name", email: "text@email.ru" /* and other parametrs*/ }
success: function(result) {
console.log(result);
}
});
});
</script>