Envio de dados ajax para php

Alguem poderia me ajudar?

Estou criando um envio via ajax para o php , estou usando o sublime text. sendo que meu dados não estão sendo enviado.

Segue minha linha de codigo…

alguem poderia me ajudar ?

$(document).ready(function(){
	$("#adicionar").click(function(){
		var idproduto = $('input[name="idprod"]').val();
	 	var qtde = $('input[name="qtd"]').val();
		var inputQtd = $('input[name="qtd"]');

		$.ajax({
			url: 'Classes/Validar_Carrinho.php',
            type: 'POST',
            data: 'produto='+idproduto+'&quantidade='+qtde+'&acao=add',
            success: function(data){}




		});
	

	});



});

O $ do $.ajax deveria ficar vermelho, pois seria o encapsulamento da variavel do ajax na página principal estou chamando as bibliotecas assim:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<scrip src="Classes/Javascript.js"></scrip>

Na página Validar_Carrinho.php coloque isso no começo do arquivo:

<?php
var_dump($_POST);
exit;

// restante fica normal...

Depois no ajax, coloque isso:

sucess: function(data) {
    console.log(data);
}

Use F12 no navegador para exibir o painel de console, dessa forma você consegue ver o que o php está recebendo e o que retorna para o ajax…

Fala, Thales!

Então, cara, o PHP trabalha com os dados vindos do request de uma forma engraçada.

Como o PHP foi pensado para sistemas online há muito tempo, ele te dá uma mãozinha pra pegar os dados vindos de formulários com as superglobais $_GET e $_POST, mas se esses dados não vêm de um formulário, essas variáveis não são preenchidas.

Então, no seu caso, para pegar os dados, você tem duas opções:
- Adicionar o header Content-Type com o valor application/x-www-form-urlencoded na sua requisição ajax (pois assim o PHP entende como se estivesse vindo de um form, e preenche essas variáveis pra você);
- Pegar diretamente os dados de php://input (Ex: $dados = file_get_contents('php://input');)

Dá um retorno dizendo pra gente se conseguiu, cara.

Abraços.

fALA AI então no meu ta aparecendo isso aqui quando eu uso o var_dump

Tipo que está vazio o array, sendo que eu uso url amigavel e eu passo o parametro normalmente

O fato de usar url amigável afetaria se fosse GET.
Tente mandar o atributo data do $.ajax dessa forma e veja o que acontece…

data: {'produto': idproduto, 'quantidade': qtde, 'acao': 'add'},

@cviniciussdias o $.ajax do jquery por padrão envia esse content-type como diz na documentação