Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mruoppolo

Enviar dados metodo get por ajax

Recommended Posts

E ai tudo bem?

 

Eu tenho uma página que recebe todos os dados de um array criado dentro de uma session e preciso enviar um por um dos dados deste array via ajax (sem recarregar a página) para a página compras.php, porém, não sei o motivo mas não esta funcionando.

 

Após enviar todos os dados do loop, eu preciso que a página seja redirecionada para a compras.php.

 

Ou seja, enquanto estiver enviando item por item, não redireciona, depois que enviar todos, redireciona.

 

o código que fiz é este:

<?php
session_start();
for ( $i = 0, $size = count( $SESSION['product'] ); $i < $size; $i++ )
{
?>
<script>
	var meuAjax = new Request({
   "url": "http://www.pointdopc.com.br/compras.php",
   "method": "get",
   "data": "action=add&product_id=<?php echo $_SESSION['product'][$i]; ?>";
   }).send();
</script>
<?php 
}
header("Location: http://www.pointdopc.com.br/compras.php");
?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>

Ele redireciona para o carrinho de compras, mas quando eu chego la o carrinho esta vazio.

Alguém sabe me explicar o que pode estar ocorrendo??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse domínio http://www.pointdopc.com.br é seu ?

 

Se for, não informe o domínio completo assim.

O Ajax pensa que é crossdomain e o navegador bloqueia a requisição.

 

Vc consegue ver isso no console de erros.

Ctrl + Shift + J no Chrome ou Firefox.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hum, é o mesmo dominio do site é que o código esta sendo executado dentro de outra pasta, deixa eu ver aqui


eu modifiquei os endereços por completo para ../compras.php que seria o mesmo endereço, porém ainda não funciona :/


rodei o console e deu o seguinte:

 

Resource interpreted as Script but transferred with MIME type text/html: "http://pointdopc.com.br/atendimento-online/js/status_image.php?base_url=http://pointdopc.com.br/atendimento-online&l=salagw&x=1&deptid=0&".

Compartilhar este post


Link para o post
Compartilhar em outros sites

E o que aparece no console de erros ?

 

Tem certeza que o script: compras.php espera um GET para incluir produtos no carrinho ? (muito estranho)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então o link para add produtos ao carrinho é: http://www.pointdopc.com.br/compras.php?action=add&product_id=128

Ele passa a ação e o id do produto via get

 

Desculpa eu esqueci de postar o link do meu sistema: http://www.pointdopc.com.br/monte-seu-pc-3/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, vamos ao outro problema.

 

Esse javascript dentro do php nunca vai funcionar, hehe

Não é assim que as coisas funcionam entre php e client-side.

 

Provavel que o php imprimiu as 3 tags scripts antes do js ter tempo de começar a enviar os requests.

Repense essa forma de ler a session.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha só, eu consegui fazer o seguinte, como os dados eram salvos em um array do php eu consegui converter ele para javascript e consegui também fazer um laço de repetição for para enviar os dados um por um, mas continuo sem conseguir executar o envio via ajax.

 

O código ficou assim:

 

<script>
//variáveis
var i, array_produtos, string_array;
//recebe a string com elementos separados, vindos do PHP
string_array = '<?php echo $array; ?>';
//transforma esta string em um array próprio do Javascript
array_produtos = string_array.split('|');
//varre o array só pra mostrar que tá tudo ok
for (i in array_produtos){
var meuAjax = new Request({
"url": "../compras.php",
"method": "get",
"data": "action=add&product_id="+array_produtos;
}).send();
}
</script>

Olha só, eu consegui fazer o seguinte, como os dados eram salvos em um array do php eu consegui converter ele para javascript e consegui também fazer um laço de repetição for para enviar os dados um por um, mas continuo sem conseguir executar o envio via ajax.

 

O código ficou assim:

 

<script>
//variáveis
var i, array_produtos, string_array;
//recebe a string com elementos separados, vindos do PHP
string_array = '<?php echo $array; ?>';
//transforma esta string em um array próprio do Javascript
array_produtos = string_array.split('|');

//varre o array só pra mostrar que tá tudo ok
for (i in array_produtos){ 
var meuAjax = new Request({
  "url": "../compras.php",
  "method": "get",
  "data": "action=add&product_id="+array_produtos[i];
  }).send();
}

</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.