webpagina opslaan
Deze pagina van mij **knip** wil ik op kunnen slaan.
Dat is gedeeltelijk wel gelukt doormiddel van dit scrip;
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
$html = file_get_contents('http://www.example.org/phptest/keurrapport.html');
$pdfHtml = 'pdfFile.html';
file_put_contents($pdfHtml, $html);
if (file_exists($pdfHtml)){
echo "Success : klaar";
} else {
echo "mislukt:";
}
?>
$html = file_get_contents('http://www.example.org/phptest/keurrapport.html');
$pdfHtml = 'pdfFile.html';
file_put_contents($pdfHtml, $html);
if (file_exists($pdfHtml)){
echo "Success : klaar";
} else {
echo "mislukt:";
}
?>
Dit script maakt een copy van de pagina maar niet van wat ik ingevuld heb op de webpagina.
En dat is het probleem, ik zou graag willen dat de ingevulde gegevens ook worden gekopieerd.
Ik weet alleen niet of dit mogelijk is.
Gewijzigd op 19/10/2017 19:51:19 door - Ariën -
Kun je niet gewoon vanuit je browser 'printen als PDF' of zoiets?
Je zult de gegevens dan in een database moeten opslaan, of iets anders moeten verzinnen.
Als je een PDF wilt genereren, dan kan je toch de ingevoerde gegevens van dat keur-rapport in PDF-omzetten vanaf diezelfde pagina. Dan is die hele kopieer-actie niet meer nodig.
Het script kopieert alleen de broncode.
Gewijzigd op 22/09/2017 13:44:56 door - Ariën -
Rens bertel op 22/09/2017 13:42:42:
dat klopt wat je zegt maar dat schrijf ik zelf toch dat is nou net het probleem.
Het script kopieert alleen de broncode.
Het script kopieert alleen de broncode.
en omzetten aar pdf gaat vrij makkelijk met chroom, maar dat is niet de bedoeling
Dan zul je naar FPDF of TCPDF moeten kijken. Daarmee kan je zelf PDF's genereren met PHP. Je zult dan wel eerst je formulier moeten versturen, waarna je per element kijkt of die ingevuld is. En dan je HTML-code naar FPDF of TCPDF moeten schrijven.
Maar misschien is dat allemaal niet mogelijk, ik wet het niet. ik was blij met het eerste stapje dat ik een copy op de server aanmaak doormiddel van die php, weliswaar zonder de ingevulde gegevens.
Toevoeging op 22/09/2017 14:12:29:
Ik zat te denken aan printscreen doormiddel van php maar ik weet niet of dat iets is
- als eerste zul je een klanten-systeem moeten aanleggen, want je wilt de werkbonnen per klant archiveren.
- Je zult een gebruikerssysteem moeten maken, want wat als je straks iemand in dienst neemt. Een rechtensysteem lijkt mij ook erg handig, want niet iedereen mag hetzelfde doen. Zo zou de hoofd-eigenaar en de boekhouder bijv. weer enkel rechten moeten hebben op de financiele transacties en de inkomsten en uitgaven.
- Je zult de werkzaamheden die uitgevoerd worden apart moeten opslaan, want werkzaamheden veranderen op den duur door veranderende eisen.
- De werkzaamheden per bon moet je apart opslaan.
- Werkbonnen die afgehandeld en betaald zijn mogen niet meer aangepast worden.
Zomaar wat dingen die van belang zijn. Je kan het zelf (laten) maken, maar misschien zijn er in de onderhoudsbranche waarin je werkt ook al kant-en-klare oplossingen.
Een print-screen met PHP kan niet. PHP is server-side, en die kan niet bij de cliënt iets van het scherm opslaan.
Gewijzigd op 22/09/2017 14:16:18 door - Ariën -
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
//website url
$siteURL = "http://www.codexworld.com/";
//call Google PageSpeed Insights API
$googlePagespeedData = file_get_contents("https://www.googleapis.com/pagespeedonline/v2/runPagespeed?url=$siteURL&screenshot=true");
//decode json data
$googlePagespeedData = json_decode($googlePagespeedData, true);
//screenshot data
$screenshot = $googlePagespeedData['screenshot']['data'];
$screenshot = str_replace(array('_','-'),array('/','+'),$screenshot);
//display screenshot image
echo "<img src=\"data:image/jpeg;base64,".$screenshot."\" />";
?>
//website url
$siteURL = "http://www.codexworld.com/";
//call Google PageSpeed Insights API
$googlePagespeedData = file_get_contents("https://www.googleapis.com/pagespeedonline/v2/runPagespeed?url=$siteURL&screenshot=true");
//decode json data
$googlePagespeedData = json_decode($googlePagespeedData, true);
//screenshot data
$screenshot = $googlePagespeedData['screenshot']['data'];
$screenshot = str_replace(array('_','-'),array('/','+'),$screenshot);
//display screenshot image
echo "<img src=\"data:image/jpeg;base64,".$screenshot."\" />";
?>
- Ariën -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 22/09/2017 14:19:54 door - Ariën -
Dan is het hoogst ongebruikelijk om html pagina's (die toch statisch zijn) te gaan kopiëren. Het opslaan van de GEGEVENS in de database is wel een goed idee. Voor de klant kun je gewoon het rapport tonen zonder formulier velden.
Het lijkt mij overigens een klus voor een PHP developer. Jij bent namelijk met uiterst serieuze zaken bezig: het keuren van hijskranen. Hieraan zitten mogelijk juridische consequenties in geval er geschillen zijn met jouw klanten. Een degelijke database waarin de gegevens geordend en veilig opgeslagen worden en beveiligd worden lijkt mij een must. Rapporten zouden na goedkeuring direct naar de klant gemaild kunnen worden.
Mijn advies zou zijn om een ervaren developer in de arm te nemen. Dit zal tevens goedkoper zijn dan jouw uren die je kwijt gaat zijn om een slechte oplossing te maken :-)
Gewijzigd op 22/09/2017 14:21:46 door - Ariën -
Bedankt voor jullie bezorgde adviezen. Maar neem niet letterlijk op "ik ben de enige die de rapporten kan invullen" zoals ik al zei ik ben een leek, het is een uitdaging om te kijken of dit gaat lukken. php advies is welkom, maar het meedenken over juridische consequenties heb ik niks aan, volgens mij zit ik toch op een php hulp forum.
Gezien je een leek bent, denk ik dat je dit beter uit handen kan nemen, of heel lang bezig moet zijn om na een hoop oefeningen dit te bouwen. Een optie is om in het vacature-topic op dit forum een vacaturetopic te starten (let op de geldende regels daar).
Om van start te kunnen gaan lijkt het me handig als je wat basiskennis PHP opdoet en je jezelf eens wat tijd gunt om iets over databases te leren. Vervolgens zou je je kunnen verdiepen in het afhandelen van formulieren.
Ook knowhow van arrays zul je nodig hebben bij het werken met databases en formulieren.
Hoe kan ik deze gegevens dan weer laten verschijnen in een rapport?
Toevoeging op 22/09/2017 14:51:27:
Ja frank ik ben gewaarschuwd, dank je.
Je kan met mysqli_fetch_assoc() de gegevens weer ophalen.
Frank Nietbelangrijk op 22/09/2017 15:19:03:
True, alleen jammer dat PHPtuts.nl niet meer bestaat.
Was een mooie opstap voor anderen met uitleg over procedureel vs. object-oriënted.
Ja eens. En in het Nederlands..
Heb je hier wat meer info over?
Toevoeging op 22/09/2017 15:34:54:
kan ik die dan weer in een rapport laden op de juiste plek?