Odeslání HTML page na server pro další zpracování – JavaScript, AJAX, jQuery – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Odeslání HTML page na server pro další zpracování – JavaScript, AJAX, jQuery – Fórum – Programujte.comOdeslání HTML page na server pro další zpracování – JavaScript, AJAX, jQuery – Fórum – Programujte.com

 

ZAJDAN0
Newbie
14. 8. 2013   #1
-
0
-

Ahoj,

trápím se nyní s odeslaním celé struktury HTML na server, kde naslouchá phantomJs aby vytvořil z přijatých dat(html) PDF.

Mám formulář a po jeho submitu se na straně klienta vyrenderuje page obsahující výběr ze zmíněního formuláře. Do struktury této HTML stránky jsem vsadil tlačítko pro submit/export-pdf a script zajišťující odeslání dat. tcpdumpem jsem teď poslochal odchozí provoz s filtrem na destination IP kam směřuje $.post v js scriptu a když zkusím prokliknout na input(submit) #export-pdf, tak jde vidět že na odchozím trafiku letí pakety na uvedenou IP....vypadá to tedy, že k odeslání dojde, ale proč se neděje nic na straně serveru netuším.

<input type="submit" id="export-pdf" value="send" name="submit">

<script>
$('input#export-pdf').click(function(){
  
    var html = $("body").html();
    var data = { html: html };
    $.post("http://server_IP/create-pdf.php", data);
});								
</script>
Nahlásit jako SPAM
IP: 109.107.211.–
ZAJDAN0
Newbie
15. 8. 2013   #2
-
0
-

zjišťuji, že dostat strukturu html dokumentu do proměné nebude tak jak jsem si namýšlel, protože definice říká:
$("selector").html();

ovšem nikde se už nepíše až na jaký vrchol v DOM struktuře selector dosáhne, zda až na "body" a nebo dokonce až k "html"

po konzultaci s pár lidmi je doporučeno spíše:

var html = document.documentElement.outerHTML;

pokud by to tedy tak bylo není mi jasné zda tuto proměnou mohu dosadit jako argument(data) do methody $.post

příklad:
 

<input type="submit" id="export-pdf" value="CREATE PDF" name="submit">
$('input#export-pdf').click(function(){
var html = document.documentElement.outerHTML;
$.post("http://server_IP/create-pdf.php", html);
});
</script>


create.php (naslouchá na externím serveru):

<?php
$html = $_POST['html'];
file_put_contents("tmp.html", $html);
?>

zatím mi to nefunguje, ale kde je ta chyba? díky za každou radu

Nahlásit jako SPAM
IP: 109.107.211.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 2 hosté

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý