Jump to content
reinaldorti

[Resolvido] Retorno do PHP

Recommended Posts

Olá, estou tentando pegar o resultado de um foreach com js mais ele só ta retornando um resultado.. Alguém manja de Jquery pra me dar uma luz.. 

se alguém quiser ver onde estou fazendo isso é aqui

desde ja agradeço...

foreach ($read->getResult() as $rows): 
 $jSon['result'] = " 
 <div class='box_imoveis' style='display:block'>
 <p class='name'>$rows[descricao]</p>
 <div class='top-info'>
 <span class='empresa'>$rows[grupo_titulo]</span>
 <span class='cidade'></span>
 <span class='descricao'>$rows[descricao_ANU]</span>
 </div> 
 </div> 
 ";
 endforeach;
 
 $jSon['success'] = $Post['descricao'];


 $('.jumpMenu').on('change',function(){
 var form = $(this);
 var data = $(this).serialize();
 var base = "../_cdn/ajax/users";
$.ajax({
 url: base + '.ajax.php',
 data: data,
 type: 'POST',
 dataType: 'json',
 beforeSend: function () {
 form.find('.form_load').fadeIn(500);
 form.find('.ms').fadeOut(500, function () {
 $(this).remove();
 });
 },
 success: function (resposta) {
 if (resposta.error) {
 form.find('.trigger-box').html('<div class="ms trigger-error">' + resposta.error + '</div>');
 form.find('.trigger-error').fadeIn();
 } else {
 form.find('.trigger-box').html('<div class="ms trigger-success">' + resposta.success + '</div>');
 form.find('.trigger-success').fadeIn(); 
 
 $('.j_rows').remove();
 $('.j_result').show();
 
 $(".j_result").append(resposta.result);
 }
 form.find('.form_load').fadeOut(500);
 }
 });
 //console.log(data);
 return false;

Share this post


Link to post
Share on other sites
21 minutos atrás, Tadeu Barbosa disse:

Bom dia.
Ali no primeiro foreach acho que seria assim, não?


<?php
foreach...

  $jSon['result'][] =

Acho que você está colocando todos os resultados dentro do índice 'result'.

entao, tirei o result e ele mostra certinho. olha ai imagem ai.. imagem só não mostra agora..

19 minutos atrás, Alaerte Gabriel disse:

Bom dia. Seu problema é com PHP ou JavaScript ?

bom dia, eu consigo recuperar certinho no php, só nao consigo jogar o retorno dele na pagina classificados.... 

Share this post


Link to post
Share on other sites
26 minutos atrás, Tadeu Barbosa disse:

Bom dia.
Ali no primeiro foreach acho que seria assim, não?


<?php
foreach...

  $jSon['result'][] =

Acho que você está colocando todos os resultados dentro do índice 'result'.

coloquei assim, ( CODIGO ) ele ta mostrando certinho.. mais na página não mostra o resultado e fica so carregando...

Share this post


Link to post
Share on other sites

Você está imprimindo o HTML direto em um retorno que deveria ser JSON. Ali no foreach você precisa inserir os valores dentro do array $jSon mesmo.

Deverá ficar assim:

<?php
foreach...
  
  $jSon['result'][] = "<div class='..."

endforeach

Pois é a variável $jSon que está sendo transformada em JSON para que o seu JavaScript possa interpretá-lo como um array de dados. Veja: http://php.net/manual/pt_BR/function.json-encode.php. Um exemplo de como usaria a função json_encode com um array como este do exemplo do php.net:

<?php
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
echo json_encode($arr);

Ele irá imprimir:

{"a":1,"b":2,"c":3,"d":4,"e":5}

 

  • +1 1

Share this post


Link to post
Share on other sites
6 minutos atrás, Tadeu Barbosa disse:

Você está imprimindo o HTML direto em um retorno que deveria ser JSON. Ali no foreach você precisa inserir os valores dentro do array $jSon mesmo.

Deverá ficar assim:


<?php
foreach...
  
  $jSon['result'][] = "<div class='..."

endforeach

Pois é a variável $jSon que está sendo transformada em JSON para que o seu JavaScript possa interpretá-lo como um array de dados. Veja: http://php.net/manual/pt_BR/function.json-encode.php. Se você para para a função json_encode um array como este exemplo do php.net:


<?php
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
echo json_encode($arr);

Ele irá imprimir:


{"a":1,"b":2,"c":3,"d":4,"e":5}

 

Cara, sei nem como te agradecer.. coloquei assim CODIGO , so de ter colocado o $jSon['result'][] ja resolveu.. show de bola.. tinha tentado de tudo e não resolvia, sempre mostrava  um resultado.. Obrigado mesmo...

Share this post


Link to post
Share on other sites

obrigado mesmo, não iria adivinhar que tinha que colocar [] nunca.. hehehee coisa tam simples mais que não enchergamos... obrigado mesmo!!!

Share this post


Link to post
Share on other sites
4 horas atrás, Alaerte Gabriel disse:

Você sabe o porque do colchete ? sabe porque teve que colocá-lo ?

realmente não sei, mais sei que funcionou certinho.. nosso amigo Tadeu Barbosa vai saber pq...

Share this post


Link to post
Share on other sites

O que ele está querendo dizer é que eu não deveria somente tentar resolver o seu problema, mas que você deveria entender o erro e assim nas próximas vezes saber resolvê-los sozinho.

 

6 horas atrás, Tadeu Barbosa disse:

Bom dia.
Ali no primeiro foreach acho que seria assim, não?


<?php
foreach...

  $jSon['result'][] =

Acho que você está colocando todos os resultados dentro do índice 'result'.

 

Não expliquei direito o que houve. Você estava com problemas por que ao invés de adicionar valores ao array $jSon, você estava simplesmente substituindo valor por valor.

Dê uma lida na documentação sobre como tratar um array (http://www.devfuria.com.br/php/criando-iterando-um-array/).

Veja que "um array no PHP é na verdade um mapa ordenado" (referência ao php.net) e uma das formas de se adicionar itens ao array é pelos colchetes:

<?php
$MeuArray = array();
$MeuArray[] = 1;
$MeuArray[] = 2;
$MeuArray[] = 3;

var_dump($MeuArray); // 1, 2, 3

 

Se o JS recebia um JSON você precisaria previamente adicionar as informações na variável. Por isso dos colchetes em $jSon['result'].

 

 

 

Peço desculpas aos administradores, tentarei ser mais didático das próximas vezes. Entendo a preocupação dos mesmos.

Share this post


Link to post
Share on other sites

Simplificando a explicação acima.

Cada vez que você adiciona um [] ao lado de uma lista é a mesma coisa que você estivesse falando ao código:
'Adicione esse valor ao próximo índice'.

 

Seguindo esse contexto, temos:
 

<?php

$arrayFirst = [];
$arrayTwo = [];

/*
/ Ambos são arrays
*/

for($x = 0; $x < 10; $x++)
{
  $arrayFirst[] = $x;
  $arrayTwo = $x;
}

print_r($arrayFirst) // 0, 1, 2, 3, 4, 5, 6... 9 logo tem 10 índices [0]..[9]
print_r($arrayTwo) // Deixa de ser um array e recebe o ultimo valor de x, sendo 9.

 

  • +1 2

Share this post


Link to post
Share on other sites
Em 31/07/2017 at 16:05, Tadeu Barbosa disse:

O que ele está querendo dizer é que eu não deveria somente tentar resolver o seu problema, mas que você deveria entender o erro e assim nas próximas vezes saber resolvê-los sozinho.

 

 

Não expliquei direito o que houve. Você estava com problemas por que ao invés de adicionar valores ao array $jSon, você estava simplesmente substituindo valor por valor.

Dê uma lida na documentação sobre como tratar um array (http://www.devfuria.com.br/php/criando-iterando-um-array/).

Veja que "um array no PHP é na verdade um mapa ordenado" (referência ao php.net) e uma das formas de se adicionar itens ao array é pelos colchetes:


<?php
$MeuArray = array();
$MeuArray[] = 1;
$MeuArray[] = 2;
$MeuArray[] = 3;

var_dump($MeuArray); // 1, 2, 3

 

Se o JS recebia um JSON você precisaria previamente adicionar as informações na variável. Por isso dos colchetes em $jSon['result'].

 

 

 

Peço desculpas aos administradores, tentarei ser mais didático das próximas vezes. Entendo a preocupação dos mesmos.

sim, entendi oque você quis dizer, e fui procurar poque motivo das [], obrigado!!!!

14 horas atrás, jamesbond disse:

Simplificando a explicação acima.

Cada vez que você adiciona um [] ao lado de uma lista é a mesma coisa que você estivesse falando ao código:
'Adicione esse valor ao próximo índice'.

 

Seguindo esse contexto, temos:
 


<?php

$arrayFirst = [];
$arrayTwo = [];

/*
/ Ambos são arrays
*/

for($x = 0; $x < 10; $x++)
{
  $arrayFirst[] = $x;
  $arrayTwo = $x;
}

print_r($arrayFirst) // 0, 1, 2, 3, 4, 5, 6... 9 logo tem 10 índices [0]..[9]
print_r($arrayTwo) // Deixa de ser um array e recebe o ultimo valor de x, sendo 9.

 

isso mesmo.. pesquise sobre isso.. eu tinha tentado [0], [1], mais o [] sem nada eu não tinha feito... mais obrigado pela ajuda....obrigado!!

Share this post


Link to post
Share on other sites
Em 31/07/2017 at 16:05, Tadeu Barbosa disse:

O que ele está querendo dizer é que eu não deveria somente tentar resolver o seu problema, mas que você deveria entender o erro e assim nas próximas vezes saber resolvê-los sozinho.

 

 

Não expliquei direito o que houve. Você estava com problemas por que ao invés de adicionar valores ao array $jSon, você estava simplesmente substituindo valor por valor.

Dê uma lida na documentação sobre como tratar um array (http://www.devfuria.com.br/php/criando-iterando-um-array/).

Veja que "um array no PHP é na verdade um mapa ordenado" (referência ao php.net) e uma das formas de se adicionar itens ao array é pelos colchetes:


<?php
$MeuArray = array();
$MeuArray[] = 1;
$MeuArray[] = 2;
$MeuArray[] = 3;

var_dump($MeuArray); // 1, 2, 3

 

Se o JS recebia um JSON você precisaria previamente adicionar as informações na variável. Por isso dos colchetes em $jSon['result'].

 

 

 

Peço desculpas aos administradores, tentarei ser mais didático das próximas vezes. Entendo a preocupação dos mesmos.

quando eu colocava o [0] ele sempre retornava 1, quando eu colocava o [1] carregava e não mostrava nada. mais nem passou pela minha cabeça em colocar [] sem nada dentro... 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By daviassumpcao
      Pessoal... estou iniciando estudos em JS e me deparei com um desafio: Preciso tratar um valor (string) para obter apenas número...  a primeira variável retorna NAN, as outras retornam corretamente. O que posso estar fazendo errado na variável "a" ... preciso que seja retornado "299,00" ... agradeço antecipadamente. 
       
      Segue código: 
       
      <p id="demo"></p> <script> var a = parseInt("R$ 299,00") + "<br>"; var b = parseInt("40 years") + "<br>"; var c = parseInt("10.00") + "<br>"; var n = a + b + c; document.getElementById("demo").innerHTML = n; </script>  
    • By violin101
      Caros amigos, saudações...
       
      Tenho uma rotina para mostrar ao usuário todos os produtos Relacionados com um determinado Produto.
       
      Exemplo:
      Caderno ---> relacionado com: lápis, borracha, caneta, apontador e etc.
       
      O problema que estou enfrentando é o seguinte:
      ==> o produto caderno se estiver relacionado com mais de 4 produtos não ocorre o erro.
       
      Quando mostro o relacionamento se o produto estiver relacionado com apenas 3 ou menos produto, o CAROUSEL fica repetindo o 1º ou 2º item.
       
      Como faço para isso não acontecer ?
       
      Abaixo posto como está o JavaScript.
      $(".produto_relaciona").owlCarousel({ loop: true, nav: true, items: 4, dots: false, navText: ["<i class='fa fa-angle-left'></i>", "<i class='fa fa-angle-right'></i>"], smartSpeed: 1200, autoplayTimeout: 5000, autoHeight: false, autoplay: true, responsive: { 0: { items: 1 }, 480: { items: 2 }, 768: { items: 3 }, 992: { items: 4 } } });  
       
      Grato,
       
      Cesar
    • By anabeatrizzz
      2. Por que PHP é a mais utilizada em projetos? Explique.
       
      3. São 24 anos de desenvolvimento em PHP, o que faz ele durar tanto na área da programação? Explique.
       
      4. Você acredita que o PHP vai morrer ou não? Explique.
       
      5. Explique o que seria esta HHVM que as empresas utilizam.
       
      6. PHP tem a facilidade de criar APIs, quais seriam as vantagens na hora de desenvolver aplicativos para celular? Explique.
       
      7. Explique um pouco sobre o Laravel, Zend Framework, Sympony, lumen, codelgniter que foram surgindo ao decorrer dos anos.
       
      8. “O PHP veio da WEB e da WEB ele permanecerá”. O que essa frase significaria para você? Explique.
       
      9. Como funcionariam as comunidades em PHP? Por que existem tantas pessoas ainda usando a linguagem? Explique.
       
      10. O PHP vem se modernizando durante anos, quais seriam estas evoluções dele? Explique.
    • By fideles
      Mais uma vez venho aqui pedir ajuda a vocês.
       
      Tenho um formulario que criei aqui na empresa algo bem simples, somente para sair das planilhas de excel, que seria cadastro de funcionarios.
       
      Tem os campos, matricula, nome completo, unidade de trabalho, endereço e telefone de emergencia.
       
      A parte do formulario funciona, a gravação no BD tbm, listar as informações também, ai me perguntaram se era possível um auto preenchimento dos campos colocando somente a matricula do funcionario e respondi que eu não sei porque realmente não sei.
       
      A ajuda que eu preciso de vocês seria, é possível fazer isso ? Colocar a matricula e vir do banco e preencher os outros inputs? Se sim, é possível me derem um exemplo de como funciona e eu estudar o codigo e colocar nos outros inputs.
       
      Obrigado antecipadamente. 
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.