Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, estou apanhando que nem cachorro aqui, o script esta funcionando mas a sujeira da string ta me dando nos nervos
tenho esta função que faz a busca no BD e monta um string
function ultimosPagamentos($clienteID, $limit = 10){
$strCode = '<p class="dadosTitle">pagamentos</p><br />';
$query = mysql_query("SELECT * FROM `clientes_pagamentos` WHERE ref_cliente = $clienteID ORDER BY data_pagamento DESC LIMIT $limit") or die (mysql_error());
$strCode.= '<table>';
if(mysql_num_rows($query) > 0){
while($result = mysql_fetch_assoc($query)){
foreach ($result as $campo => $valor) { $$campo = $valor; }
$dataPagamento = transformaData($data_pagamento);
$valorPagamento = transformaMoeda($valor_pagamento);
$strCode.="
<tr data-venda='$ref_venda'>
<td>$dataPagamento</td>
<td>$valorPagamento</td>
</tr>";
}
}else{
$strCode .= "</table><p id='semPagamento'>Não há pagamentos registrados </p>";
}
$strCode .= '</table>';
return $strCode;
}
Aqui a função é chamada por ajax e a string convertida em JSON
if($action == 'getUltimosPagamentosList'){
$info['ultimosPagamentos'] = ultimosPagamentos($_POST['clienteID'], 10);
echo json_encode($info);
}
Até ai tudo bem, tudo funcionando mas a string quando o JSON retorna do POST do jquery o response fica assim
{"ultimosPagamentos":"<p class=\"dadosTitle\">pagamentos<\/p><br \/><table>\r\n\t\t\t\t<tr data-venda=''>\r\n\t\t\t\t <td style='font-size: 11px'>09\/04\/2011<\/td>\r\n <td style='font-size: 12px; text-align:right'>2,00<\/td>\r\n\t\t\t\t<\/tr>\r\n\t\t\t\t<tr data-venda='15, 16,'>\r\n\t\t\t\t <td style='font-size: 11px'>09\/04\/2011<\/td>\r\n <td style='font-size: 12px; text-align:right'>5,00<\/td>\r\n\t\t\t\t<\/tr>\r\n\t\t\t\t<tr data-venda=''>\r\n\t\t\t\t <td style='font-size: 11px'>09\/04\/2011<\/td>\r\n <td style='font-size: 12px; text-align:right'>4,00<\/td>\r\n\t\t\t\t<\/tr><\/table>"}
tentei remover esse monte de \r \n e \t e não obtive sucesso, tentei com ER e com algumas funções , alguem poderia me dar uma luz? Obrigado
Você deve utilizar utf8_encode() para responder com uma string para o javascript..
E essa string aí se eu não me engano o jquery transforma certinho em um objeto se você usar eval():
data = eval( '(' + data + ')' );