Veriablenübergabe anTextarea
Thomas
- php
Hallo!
Ich habe eine html datei das ein form enthält und eine php datei, die die funktion des forms regelt.
das form erstellt mehrer dateien. ich will nun, dass wenn ich das form ausgefüllt habe und auf den button drücke, dass die soeben erstellte datei in der textarea angezeigt wird.
ich lese die datei mit readfile() in der php datei aus. das klappt auch. aber wie kann ich das readfile in die textarea verlegen? so, dass es nicht ausserhalb der textarea angezeigt wird sondern da drin?
danke!
thomas
hallo thomas
ich lese die datei mit readfile() in der php datei aus. das klappt auch. aber wie kann ich das readfile in die textarea verlegen? so, dass es nicht ausserhalb der textarea angezeigt wird sondern da drin?
So?
<textarea cols="" rows="">
<? echo readfile(irgendwas) ?>
</textarea>
kaepten
Hallo kaepten!
<textarea cols="" rows="">
<? echo readfile(irgendwas) ?>
</textarea>
Hmm ich habs mal ausprobiert und musste dazu die html datei in php umwandeln. Aber wenn ich dann die seite mit dem formular nochmals aufrufe, stecht der komplette php-befehl in der textarea.
ausserdem ist der pfad zur datei variabel, das heißt ich müsste schon das ganze aus der zweiten php datei steuern, so dass die erste datei mit dem form auch html bleibt (nicht zwangweise...)
Aber vielen dank!
Thomas
Hoi Thomas
Hmm ich habs mal ausprobiert und musste dazu die html datei in php umwandeln. Aber wenn ich dann die seite mit dem formular nochmals aufrufe, stecht der komplette php-befehl in der textarea.
Ja das stimmt, es müsste auch eine php-Endung haben, aber so einfach wie ich das geschrieben habe ist es natürlich schon nicht. Ich vermutete ein anderes Problem, die Antwort ist also nicht ganz richtig gewesen.
ausserdem ist der pfad zur datei variabel, das heißt ich müsste schon das ganze aus der zweiten php datei steuern, so dass die erste datei mit dem form auch html bleibt (nicht zwangweise...)
Was passiert denn, wenn das php fertig abgearbeitet worden ist?
kaepten
HI nochmal!
Was passiert denn, wenn das php fertig abgearbeitet worden ist?
Also, ich gebe in das Form Daten ein und sage im Form einen Pfad an, indem diese Daten in einer txt gespeichert werden sollen.
Dann drücke ich den button.
mein php nimmt die ganzen sachen aus den textfeldern und speeichert es in einer txt datei im angegebenen pfad.
Ja und nun soll noch die zusatzfunktion da rein, dass wenn es abgespeichert ist, das php hingeht und aus der soeben erstellten txt alles in das textarea schreibt. und das wars.
sonst passiert nichts mehr!
gruß,
thomas
Hallo
Kann sein dass Dir das Script hilft was oben von Tom bereits angeboten worden ist.
Also, ich gebe in das Form Daten ein und sage im Form einen Pfad an, indem diese Daten in einer txt gespeichert werden sollen.
Zum es präzieren: Du hast eine Text-Input Feld (Filename) und ein Textarea (Inhalt der Datei) und den Button (abschicken).
Ja und nun soll noch die zusatzfunktion da rein, dass wenn es abgespeichert ist, das php hingeht und aus der soeben erstellten txt alles in das textarea schreibt. und das wars.
Ja ok. Aber irgendwie fehlt mir der Ansatz was _nach_ dem Script passiert! Welche nachfolgende Seite kommt? Wird die aufgerufen, oder erzeugt das PHP Script den output?????
Diejenige Seite die den Aufruf des PHP macht, die ist ja dann weg. Da muss ja also etwas "neues" kommen.
kaepten
habe d'ehre
mein php nimmt die ganzen sachen aus den textfeldern und speeichert es in einer txt datei im angegebenen pfad.
Ja und nun soll noch die zusatzfunktion da rein, dass wenn es abgespeichert ist, das php hingeht und aus der soeben erstellten txt alles in das textarea schreibt. und das wars.
Wo ist das Problem?
Dein Formular ist eine .php-Datei
Nach Absenden rufst Du es wieder auf, Dein Text wird als Parameter mitgegeben, diesen kannst Du in der Textarea ausgeben. .html-Dateien koennen keine Parameter aufnehmen.
In etwa so:
if(isset($_POST['send'])):
$letztertext = $_POST['textfeld'];
// Abarbeitung der Eingaben unter Beruecksichtigung aller Sicherheitsaspekte
endif;
echo "<form action="".$_SERVER['PHP_SELF']."" method="post">\n";
echo "<textarea class="feld" name="textfeld" rows="6" cols="66">".$letztertext."</textarea>\n";
echo "<input type="hidden" name="send" value="on" />\n";
echo "</form>"
carpe diem
Wilhelm
Hello,
if(isset($_POST['send'])):
$letztertext = $_POST['textfeld'];
// Abarbeitung der Eingaben unter Beruecksichtigung aller Sicherheitsaspekte
endif;
Wenn man schon mit isset() arbeitet, sollte man es auch konsequent tun.
$letztertext = $_POST['textfeld'];
das kann dann nämlich genauso schief gehen, entweder wegen Fake oder wegen Versionskonflikt oder oder oder...
Ich mag das ewige isset() ja auch nicht und frage iimmer nur
if ($_POST["btn"]["save"]) odre so ähnlich. Notices sind dann natürlich ausgeschaltet.
Liebe Grüße aus http://www.braunschweig.de
Tom
Hi
Wenn man schon mit isset() arbeitet, sollte man es auch konsequent tun.
aha, das habe ich so nie geprüft. Was ist denn der Unterschied zwischen isset() und empty()? Ich machs nämlich immer mit dem.
kaepten
Hello,
Wenn man schon mit isset() arbeitet, sollte man es auch konsequent tun.
aha, das habe ich so nie geprüft. Was ist denn der Unterschied zwischen isset() und empty()? Ich machs nämlich immer mit dem.
Isset() prüft, ob die Variable als solche in der Liste der Vars eingetragen ist, also überhaupt angelegt ist und empty prüft dann noch, ob sie einen Wert enthält, der von "" oder 0 verschieden ist.
Das ist nicht immer günstig.
Da hatte ich gestern einen "professionellen" Fragebogen per Internet, indem gefragt wurde:
Wieviele xy hatten sie damals
Wieviele xy hatten Sie vor zwei Jahren
Wieviele xy haben sie heute?
Und wenn man da nun 0 eintippte, dann hat das Ding einen Fehler gemeldet. Die haben auf der anderen Seite das Zwangsfeld nämlich mit empty() geprüft und das ist falsch gewesen.
Empty ist fast unbrauchbar.
Sowas prüft man besser mit
if(isset($feld) and strlen($feld) > $len)
$len ist ja je nach Anwendungsfall anders sinnvoll. Den Typ, der bei Umwandlung ermittelt werden kann, muss man ggf. auch vergleichen mit dem für das Feld vorgeschriebenen. Wenn in ein Numeric-Field jemand "13doof" reinschreibt, ist das ja eignetlich nicht richtig.
Liebe Grüße aus http://www.braunschweig.de
Tom
habe d'ehre
// Abarbeitung der Eingaben unter Beruecksichtigung aller Sicherheitsaspekte
$letztertext = $_POST['textfeld'];
das kann dann nämlich genauso schief gehen, entweder wegen Fake oder wegen Versionskonflikt oder oder oder...
Darum auch der Hinweis auf die Sicherheitsaspekte. Das die Variablen noch ueberprueft werden muessen setze ich eigentlich voraus. *g*
Mir ging es auch nur um die verkuerzte Darstellung, falls ich sein Problem ueberhaupt richtig verstanden habe. Denn da bin ich mir nach seinen Kommentaren gar nicht so sicher. ;-)
carpe diem
Wilhelm
Hello,
schau Dir mal das Script http://bitworks.de/~selfHTML/speichern.php an.
Da findest Du allerhand Anregungen...
Und wenn Du Fragen hast, dann kannst Du sie hier so posten, dass auch jemand, der das Script nicht vorliegen hat, die Frage verstehen kann. Also bitte nicht fragen "was passiert da in Zeile xy?" sondern eben das Stückchen Code rausschnippeln das Du nicht verstehst.
Liebe Grüße aus http://www.braunschweig.de
Tom
Hallo Tom!
Also bitte nicht fragen "was passiert da in Zeile xy?" sondern eben das Stückchen Code rausschnippeln das Du nicht verstehst.
Ihc versteh ehrlich nicht, wieso du das schreibst, zumal ich nie schrieb "ich kapier den befeht nicht", "ich kapier nicht was da und da passiert". Ich habe nur gefragt wie ich eine variablenübergabe zwischen 2 dateien so regeln kann, damit das resultat nachher in der textarea landet!
Aber danke für deinen Hinweis. Ich versuche mich dann evt im bildlichem Erklähren meines Scripts.....
Gruß,
Thomas
Hello,
Also bitte nicht fragen "was passiert da in Zeile xy?" sondern eben das Stückchen Code rausschnippeln das Du nicht verstehst.
Ihc versteh ehrlich nicht, wieso du das schreibst, zumal ich nie schrieb "ich kapier den befeht nicht", "ich kapier nicht was da und da passiert". Ich habe nur gefragt wie ich eine variablenübergabe zwischen 2 dateien so regeln kann, damit das resultat nachher in der textarea landet!
Aber danke für deinen Hinweis. Ich versuche mich dann evt im bildlichem Erklähren meines Scripts.....
Das bezieht sich gar nicht dediziert auf Dich, sondern richtet sich an alle Mitleser, die ggf. zu den verschiedenen Musterlösungen Fragen haben. Ich bekomme z.B. auch manchnmal (so ca. 10 Stück am Tag) Rückfragen per eMail zu den Lösungen. Die kann und will ich aber auch nicht immer beantworten, insbesondere, wenn es sich um allgemeine Verständnisfragen handelt, die wirkliche besser im Forum Platz finden. Hier können nämlich noch 100 *trommel* Leute mitlesen, die das eventuell auch interessiert und die dann selber gar nicht mehr fragen müssen.
Also versteh das vorhin gesagte bitte nicht als Angriff, sondern als Bitte.
Liebe Grüße aus http://www.braunschweig.de
Tom