Salvare pagina din php in fisier html
-
- Mesaje:80
Salvare pagina din php in fisier html
Nu reusesc sa salvez in HTML row-rile adaugate. La total se pastreaza valorile calculate insa randurile dupa primul nu se vad deloc(nici layout-ul tabelului).
MarPlo
Mesaje:4343
Daca acele randuri (sau orice alte elemente html) sunt adaugate in pagina dinamic cu JavaScript, php nu le recunoaste fiindca e ceva facut client-side, dupa incarcarea paginii, deci dupa ce php si-a terminat executia.
- Daca vrei sa salvezi pe server date prelucrate de javascript, trebuie sa le preiei si sa le trimiti cu Ajax la script-ul php.
Ca sa preiei in javascript tot codul din <body> al paginii, vezi cum e in acest exemplu.
Demo:
Apoi il trimiti cu ajax la un fisier php.
- Daca nu stii cum e cu Ajax, poti invata din Cursul de pe site.
- Sau, o alta idee fara ajax, poti sa adaugi cu javascript tot acel tabel intr-un camp ascuns din formulr, inainte de Submit. Iar in php il iei din acel camp si-l salvezi, fara sa mai preiei toata pagina cu ob_start().
- Daca vrei sa salvezi pe server date prelucrate de javascript, trebuie sa le preiei si sa le trimiti cu Ajax la script-ul php.
Ca sa preiei in javascript tot codul din <body> al paginii, vezi cum e in acest exemplu.
Cod: Selectaţi tot
<button id="btn1">Show body page code</button>
<script>
// when click on #btn1, get all the body content /source and alert it
document.getElementById('btn1').addEventListener('click', function(){
var page_body = document.querySelector('body').innerHTML.replace('&', '%26');
alert(page_body);
});
</script>
Apoi il trimiti cu ajax la un fisier php.
- Daca nu stii cum e cu Ajax, poti invata din Cursul de pe site.
- Sau, o alta idee fara ajax, poti sa adaugi cu javascript tot acel tabel intr-un camp ascuns din formulr, inainte de Submit. Iar in php il iei din acel camp si-l salvezi, fara sa mai preiei toata pagina cu ob_start().
adrian_ady
Mesaje:80
Merci dar nu mai pot, imi bubuie capul. Am gasit multe greseli in ce am facut pana acum, o parte le vedeti si voi in postari, le-am reparat insa sunt 'epuizat', nu reusesc sa mai gandesc si la Ajax... Daca se poate face ceva de genul solutiei primite:
unde intre ghilimele sa trec tr-ul cu add-row, atunci e altceva.
Cod: Selectaţi tot
$cost = isset($_POST['cost']) ? $_POST['cost'] : ' ';
MarPlo
Mesaje:4343
Vezi si varianta postata la Save current php page content into a html file
Daca te descurci cu engleza, pentru alte lucruri legate de acest subiect (sau in general despre site-uri si cod), scrie acolo.
Daca te descurci cu engleza, pentru alte lucruri legate de acest subiect (sau in general despre site-uri si cod), scrie acolo.
adrian_ady
Mesaje:80
Mai intai de toate vreau sa elimin un dubiu. Pagina 'factura' este de fapt un format A4, atat. Ca scripturi in <header> am unul 'factura.js' care contine formulele de calcul(plus addrow, deleterow) si alt script :
Eh, ca sa pot merge linistit mai departe trebuie sa fiu sigur ca acesta din urma este cel corespunzator sau nu, ori mai trebuie adaugat un altul.
Cod: Selectaţi tot
<script type='text/javascript' src='http://www.site.ro/admin/factura/js/jquery-1.3.2.min.js'></script>
MarPlo
Mesaje:4343
Daca iti trebuie sa salvezi doar tabelul html cu factura, nu are rost sa salvezi toata pagina, ci poti salva doar acel tabel. Inainte de Submit poti adauga cu javascript tabelul intr-un camp ascuns din formular.
adrian_ady
Mesaje:80
Despre salvat numai tabelul ori toata pagina.
Uite cum am gandit eu: mai intai tin sa specific ca nu am nevoie de factura, nu am avut si nici nu cred ca voi avea(din pacate); este numai dorinta de a avea un site pregatit si pentru o astfel de cerinta. Daca pot salva factura in format A4, oricand o pot consulta, printa si salva ca PDF in calculator, trimitere prin mail, etc. Alegand optiunea de salvare exclusiv tabelul nu voi avea avantajele prezentate mai sus.
In faza actuala se poate genera factura, este specificat in pagina(hidden pentru print) ca trebuie salvata mai intai ca PDF in calculator si de-abia pe urma facut click pe 'Salveaza factura' (la click se repeta avertizarea) care insereaza in db nr.factura, id, etc. inclusiv datele din primul rand.
Am testat varianta salveaza numai tabel(cu input-ul hidden). Rezultatul este ca afiseaza randurile adaugate insa din valori numai totalurile; nimic la descriere, pret unitar si cantitate(nici macar la primul rand).
- In cazul meu, unde form-ul este practic toata pagina, nu este nicio diferenta intre salvarea intregii pagini sau numai a tebelului.
- S-ar putea ca solutia sa fie serialize() si unserialize(). Dar cine stie?
Edit:
Noutate importanta!
Varianta cu salvare numai tabel functioneaza in IE. Eu, care folosesc Chrome, am inebunit facand teste....
Ca problema aparuta in html este ca se adauga automat in header <style type="text/css"></style> cu toate ca adresa catre css-ul paginii este completa: http: //.., deci poate fi accesata de oriunde . Din acest motiv nu se pastreaza dimensiunea fontului din tabel.
Uite cum am gandit eu: mai intai tin sa specific ca nu am nevoie de factura, nu am avut si nici nu cred ca voi avea(din pacate); este numai dorinta de a avea un site pregatit si pentru o astfel de cerinta. Daca pot salva factura in format A4, oricand o pot consulta, printa si salva ca PDF in calculator, trimitere prin mail, etc. Alegand optiunea de salvare exclusiv tabelul nu voi avea avantajele prezentate mai sus.
In faza actuala se poate genera factura, este specificat in pagina(hidden pentru print) ca trebuie salvata mai intai ca PDF in calculator si de-abia pe urma facut click pe 'Salveaza factura' (la click se repeta avertizarea) care insereaza in db nr.factura, id, etc. inclusiv datele din primul rand.
Am testat varianta salveaza numai tabel(cu input-ul hidden). Rezultatul este ca afiseaza randurile adaugate insa din valori numai totalurile; nimic la descriere, pret unitar si cantitate(nici macar la primul rand).
- In cazul meu, unde form-ul este practic toata pagina, nu este nicio diferenta intre salvarea intregii pagini sau numai a tebelului.
- S-ar putea ca solutia sa fie serialize() si unserialize(). Dar cine stie?
Edit:
Noutate importanta!
Varianta cu salvare numai tabel functioneaza in IE. Eu, care folosesc Chrome, am inebunit facand teste....
Ca problema aparuta in html este ca se adauga automat in header <style type="text/css"></style> cu toate ca adresa catre css-ul paginii este completa: http: //.., deci poate fi accesata de oriunde . Din acest motiv nu se pastreaza dimensiunea fontului din tabel.
adrian_ady
Mesaje:80
Am gasit undeva exemplul urmator si ma gandesc, daca se adapteaza acest model la necesitatile prezente va functiona si in Chrome?
Cod: Selectaţi tot
<!DOCTYPE html>
<html>
<head>
<title>Fonts</title>
</head>
<body>
<ul id="ulList">
<li><strong>Bold text</strong></li>
<li><em>Italic text</em></li>
<li><u>Underlined text</u></li>
<li><strike>Strikeout text</strike></li> <!-- <strike> not supported in HTML5 -->
</ul>
<div id="oScratch"></div>
<script>
document.getElementById('ulList').addEventListener('click', fnCopyHTML, false);
function fnCopyHTML(evt) {
var oWorkItem = evt.target;
if ((oWorkItem.tagName != "ul") && (oWorkItem.tagName != "li")) {
alert("Adding " + oWorkItem.outerHTML + " to the list.");
oScratch.innerHTML += oWorkItem.outerHTML + "<br />";
}
}
</script>
</body>
</html>
Subiecte similare
- Valoarea id-ului din HTML atribuită unei variabile php
PHP - MySQL - XML Primul mesaj
Încerc să extrag valorile id= min5 , id= max5 si să le pun în $_GET $_GET fara trimitere în altă paginăUltimul mesaj
cum aș putea proceda?
<div class=...
Nu prea inteleg ce vrei sa faci.
Codul php se executa pe server inainte de a fi pagina cu codul html si javascript.
In php, valorile pentru... - Eroare citire pagina cu file_get_contents
PHP - MySQL - XML Primul mesaj
Buna ziua,Ultimul mesaj
Vreau sa preiau informatiile din aceasta adresa si sa o afisez intr-o alta pagina php
URL: //79.114.46.127:5819/
Scriptul pe care...
Imi pare rau, mai mult nu stiu cum sa te ajut, posibil sa fie ceva cu SSL, dar nu cunosc.
Am testat scripturile; codul cu cURL e bun, a mers bine... - load time - idle mare - pagina principala
Discutii si Intrebari Diverse Primul mesaj
Salut,Ultimul mesaj
cu inspect-ul din Chrome si apoi tab-ul Performance se pot vedea timpii de incarcare ai unei pagini web.
Am cate o pagina principala pe...
Iata ce am gasit pe internet:
This is idle time, the time when the browser is waiting on the CPU or GPU to do some processing.
I can't find any...