dynamisch erzeugte Seite abspeichern?!?
Georg
- php
0 Alexander Foken0 Georg
hallo leute,
ich hab ein kleines problem und zwar möchte ich eine dynamisch erzeugte webseite auf dem server abspeichern.
ziel ist dabei die von einem formular (1 seite.html) eingelesenen daten in eine neu zu erzeugende webseite (2 seite.php) zu schreiben und diese dann abzuspeichern.
ich bin jetzt soweit, dass ich die daten übergeben kann und die neue seite erzeugt wird. leider komm ich jetzt nicht weiter, dass heisst ich bräucht jetzt mal nen tipp, wie ich diese neue seite zu einem richtigen html dokument machen kann.
besten dank schon mal für eure hilfe!
ciao georg.
lynx -source http://www.example.com/dynapage.php
lynx -source http://localhost/dynapage.php
Alexander
sorry, versteh ich nicht so ganz. was meinst denn damit?
sorry, versteh ich nicht so ganz. was meinst denn damit?
lynx ist ein Textmode-Browser (http://lynx.browser.org/), der auch sehr schön zum Download von Dateien und zum Konvertieren von HTML nach Text mißbraucht werden kann:
lynx -source http://forum.de.selfhtml.org/
liefert den (HTML-)Quelltext des Forums
lynx -dump http://forum.de.selfhtml.org/
konvertiert das Forum in ASCII-Text mit Link-Adressen als Fußnoten
lynx -source http://selfaktuell.teamone.de/src/xweb.gif > selfhtml-logo.gif
speichert das SelfHTML-Logo in die Datei selfhtml-logo.gif
Wenn Du also eine dynamisch erzeugte Webseite (wie z.B. das Forum) als HTML-Quelltext bekommen willst, um sie dann mit PHP weiter zu "verwursten", rufst Du aus PHP heraus "lynx -source http://forum.de.selfhtml.org" auf. Wie genau der Aufruf von externen Programmen aus PHP heraus funktioniert, steht in der Doku.
Alexander
Hallo Georg,
bevor Du nun hier den Schnellkurs in "PHP-Code per HTML-Formular" bekommst, möchte ich Dich darauf hinweisen, dass es äusserst gefählich ist, php-Code per Formular in den öffentlichen teile deines Webs hochzuladen. Wenn Du nicht 300% sicher bist, dass da niemand unautorisiertes etwas hochladen kann, solltest Du das sein lassen.
Nun zum Verfahren:
Einfach eine Textarea aufmachen und alles reinschreiben, was nachher als File erscheinensoll. Ein Textfeld mit dem Zielverzeichnis, ein Textfeld mit dem Dateinamen. Und einfach auf Submit gedrückt.
Wie es in eine Datei kommt, schi dir im Beispiel an:
http://www.bitworks.de/~tschmieder/uebung_textfeld.php
Wenn Du noch Fragen hast, dann melde dich.
Liebe Grüße aus http://www.braunschweig.de
Tom
Hallo Tom,
besten dank erstmal für deine hilfe. leider hab ich es entweder noch nicht ganz verstanden, oder ich hab mich nicht verständlich ausgedrückt:
also ich hab ein formular, dass füll ich aus und rufe beim absenden eine datei name.php auf. jetzt baut sich eine neue webseite auf auf der die vorher eingegeben daten ausgegeben werden (im design der webseite) ziel ist es jetzt dem betrachter die möglichkeit zu geben, diese "neue" seite als wirkliches html dokument auf dem server zu speichern.
bin hiwi an meiner uni und soll denn assis die möglichkeit schaffen, aus einem gesicherten! bereich der webweite heraus via formular z.b job oder dipl-arbeit angebote ins netz zu stellen. dies soll eben mit dem formular geschehen, wenn sie dann alles eingegeben haben und auf absenden drücken, sehen sie wie die neue seite aussieht. jetzt brauch ich die möglichkeit, diese seite (name.php) als html dokument in einem ordner abzuspeichern. ein anderes script durchsucht dann diesen ordner und verlinkt die darin enthaltenen dateien... war das zu verstehen??
ich hoffs... wär nett, wenn du nochmal was dazu sagen könntest.
Hallo Georg,
eigentlich sollte die Musterlösung für Textboxen genug Möglichkeiten aufzeigen.
Du kannst aus der Textbox eine beliebige Datei erzeugen lassen. Aber vielleicht möchtest Du Dir zum Vergleich noch eine einfache Gästebuch-
Lösung ansehen?
http://bitworks.de/programme/guestbook.php.txt
Das Wsentliche ist, dass Du später die eingegebene Daten mit den Formatvorgaben für die Standardseite mischst und dann so abspeicherst.
Schreib mal im Klartext jeden Schritt genau auf:
User ruft Angebotsseite auf
User klickt auf "neuen Eintrag hinzufügen"
Anmeldeseite erscheint (denn nur gelistete User dürfen eintragen)
User meldet sich an, Session wird eröffnet oder abgelehnt
Datenabfrage erscheint
User füllt aus und sendet ab
Überprüfung findet statt
Eintragung erfolgt oder zurück zur Datenabfrage mit Fehlermeldung
usw.
Nur so kommst Du zum Ziel
Liebe Grüße
Tom
Hi!
Ich denke die einfachste Möglichkeit ist, alles was name.php ausgibt zuerst in eine Variable zu schreiben.
Den Inhalt der Variable kannst du dann zum einen in ein File schreiben (fopen,fwrite,fclose) zum anderen mit echo ausgeben.
Du musst halt den gesamten HTML-Code ebenfalls in die Variable packen.
Als Bsp:
wenn du name.php momentan so aussieht:
<html><head><title>meine Seite</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
noch ein paar html-Tags
<?
echo $Variable;
?>
</body>
</html>
so sieht sie nachher so aus:
<?
$alles = '<html><head><title>meine Seite</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
noch ein paar html-Tags';
$alles .= $Variable;
$alles .= '</body></html>';
echo $alles; // Ausgabe an den Browser
$fp = fopen($dateiname, 'w'); // Datei öffnen
fwrite($fp,$alles); // schreiben
fclose($fp); // schliessen
?>
mfG
brand