trabalho com teste de software, e sempre tenho dificuldade em criar codigos, vou descrever meu problema:
tenho um código onde preciso fazer o envio de uma variavel de JS para PHP onde gero um PDF.
ao enviar a variavel por URL esta funcionando legal, porem como a variavel pode chegar a mais de 33mil caracteres esta estourando a URL.
pesquisei alguns exemplos para utilizar post para resolvar o problema, mas a o php não consegue pegar a resposta.
o codigo pega o valor de uma div e envia para o servidor.
Segue o codigo do script:
//função que envia parametros para o php foi tirado o envio por url porque dava erro de tamanho
function envia() {
ajax = iniciaAjax();
alert('f1');
if(ajax) {
alert('10000000');
imprimir();
alert('2');
}
else{
alert("O Ajax não funcionou corretamente");
}
}
//funcao que inicializa o ajax para envio de variavel para o servidor
function iniciaAjax() {
var req;
try {req = new ActiveXObject("Microsoft.XMLHTTP");}
catch(e){
try {req = new ActiveXObject("Msxml2.XMLHTTP");}
catch(ex){
try {req = new XMLHttpRequest();}
catch(exc) {
alert("Esse browser não tem recursos para uso do Ajax!");
req = null;
}
}
}
return req;
}
//abre a pagina de impressao php
function imprimir(){
window.open('imprimir.php', new Date().getTime(),'width=460,height=355,top=0,left=0');
}
//pega conteudo de uma div e salva em um campo invisevel
function carregar() {
var frase = document.getElementById('desktop').innerHTML;
document.getElementById('dados').value = frase;
alert("Esta string possui " + frase.length + " caracteres.");
envia();
}
criação do campo hidden para receber o valor e botão que chama a função
Pergunta
rodolfo_soares
Senhores(as),
trabalho com teste de software, e sempre tenho dificuldade em criar codigos, vou descrever meu problema:
tenho um código onde preciso fazer o envio de uma variavel de JS para PHP onde gero um PDF.
ao enviar a variavel por URL esta funcionando legal, porem como a variavel pode chegar a mais de 33mil caracteres esta estourando a URL.
pesquisei alguns exemplos para utilizar post para resolvar o problema, mas a o php não consegue pegar a resposta.
o codigo pega o valor de uma div e envia para o servidor.
Segue o codigo do script:
//função que envia parametros para o php foi tirado o envio por url porque dava erro de tamanho function envia() { ajax = iniciaAjax(); alert('f1'); if(ajax) { alert('10000000'); imprimir(); alert('2'); } else{ alert("O Ajax não funcionou corretamente"); } } //funcao que inicializa o ajax para envio de variavel para o servidor function iniciaAjax() { var req; try {req = new ActiveXObject("Microsoft.XMLHTTP");} catch(e){ try {req = new ActiveXObject("Msxml2.XMLHTTP");} catch(ex){ try {req = new XMLHttpRequest();} catch(exc) { alert("Esse browser não tem recursos para uso do Ajax!"); req = null; } } } return req; } //abre a pagina de impressao php function imprimir(){ window.open('imprimir.php', new Date().getTime(),'width=460,height=355,top=0,left=0'); } //pega conteudo de uma div e salva em um campo invisevel function carregar() { var frase = document.getElementById('desktop').innerHTML; document.getElementById('dados').value = frase; alert("Esta string possui " + frase.length + " caracteres."); envia(); }criação do campo hidden para receber o valor e botão que chama a função a leitura do lado do server imprimir.php<?php require_once("dompdf/dompdf_config.inc.php"); $hh = $_POST['dados_enviar']; $html = ' <html> <head>ss</head> <style> h1 {color:#333; size:20px; margin-bottom:5px;} h3 {color:#222;} </style> <body> <h1>Teste</h1> <h3>Impresso.</h3> </body> </html>'; $dompdf = new DOMPDF(); $dompdf->load_html($html); $dompdf->set_paper('letter', 'landscape'); $dompdf->render(); $dompdf->stream("exemplo-01.pdf"); ?>se possivel passarem algum caminho a seguir, agradeço.
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.