Hidden-Feld mit Javascript überschreiben + über PHP anzeigen
traumkeks
- php
Der inhalt eines versteckten feldes soll mittels
document.formular.feld.value="blabla"
überschrieben werden und über action="save.php" (da steht echo $feld drin) dann in der neugeladenen seite save.php angezeigt werden. Leider funktioniert das aber nicht wie gewünscht. Das heißt, ein bereits gesetzter inhalt wird weder angezeigt, noch ein "überschriebener" inhalt.
Bei einigem rumprobieren ist mir aufgefallen, daß z.B. der inhalt eines Textfeldes in der save.php angezeigt wird, aber ebenfalls nicht mittels der javascript-funktion überschrieben werden kann.
Der Inhalt eines Hidden-Feldes wird aber auch nicht angezeigt, wenn er bereits gesetzt wurde.
...für ´nen hilfreichen Tip wär ich überaus dankbar... :)
Hallo,
nachdem es normalerweise klappt, wäre es doch hilfreich noch etwas mehr Code zu haben. Ist die Seite irgendwo im Netz? Wie sieht die save.php komplett aus?
Grüße aus Würzburg
Julian
...mehr code kannst du gern haben, jede menge... :)
also funktioniert hat´s folgendermassen:
htm-datei:
<html>
<head>
<title>Formulareingaben überprüfen</title>
<script type="text/javascript">
function chkFormular()
{
inhalt="blabla";
document.Formular.SaveInhalt.value=inhalt;
//document.write(document.Formular.SaveInhalt.value);
}
</script>
</head>
<body bgcolor="#EEEEEE" text="#000000">
<h1>Formular</h1>
<form name="Formular" action="../includes/save.php" method="post" onSubmit="return chkFormular()">
<pre>
Name: <input type="hidden" size="40" name="SaveInhalt">
Wohnort: <input type="text" size="40" name="Ort">
Formular: <input type="submit" value="Absenden"><input type="reset" value="Abbrechen">
Zum Absenden muss eine Internetverbindung bestehen!
</pre></form></body></html>
save.php:
<?php
echo $SaveInhalt;
echo $Ort;
?>
Nicht funktionieren tut´s hier:
php-datei:
...unter anderem...
<script type="text/javascript">
function chkFormular()
{
inhalt="blabla";
document.Formular.SaveInhalt.value=inhalt;
document.Formular.Ort.value=inhalt;
}
</script>
...in selber php-datei an anderer stelle:
<form name="Formular" action="../includes/save.php" method="post" onSubmit="return chkFormular()">
<pre>
Name: <input type="hidden" size="40" name="SaveInhalt">
Wohnort: <input type="text" size="40" name="Ort">
Formular: <input type="submit" value="Absenden"><input type="reset" value="Abbrechen">
Zum Absenden muss eine Internetverbindung bestehen!
</pre></form>
...also hier wird SaveInhalt gar nicht angezeigt (ob´s geschrieben wird is unklar, weil wenn der value schon in der php-datei gesetzt wird, wird SaveInhalt in save.php trotzdem nicht angezeigt. Ort wird das ausgegeben was mein ins formular einträgt, überschrieben wirds auch nich.
...danke für die hilfe... :)
Hallo,
nachdem es normalerweise klappt, wäre es doch hilfreich noch etwas mehr Code zu haben. Ist die Seite irgendwo im Netz? Wie sieht die save.php komplett aus?
Grüße aus Würzburg
Julian
Hi
»»"return chkFormular()"
Machs mal so:
"chkFormular();return;"
hi,
bringt leider nix. Das text-feld wird angezeigt, aber nich überschrieben, und das hidden-feld wird gar nicht ausgegeben.
Hi
»»"return chkFormular()"
Machs mal so:
"chkFormular();return;"
hi
das HTML file:
<html>
<head>
<title>Formulareingaben überprüfen</title>
<script type="text/javascript">
function chkFormular()
{
inhalt="blabla";
document.Formular.SaveInhalt.value=inhalt;
}
</script>
</head>
<body bgcolor="#EEEEEE" text="#000000">
<h1>Formular</h1>
<form name="Formular" action="save.php" method="get" onSubmit="chkFormular()">
<pre>
Name:<input type="text" size="40" name="SaveInhalt">
Wohnort:<input type="text" size="40" name="Ort">
Formular:<input type="submit" value="Absenden"><input type="reset" value="Abbrechen">
Zum Absenden muss eine Internetverbindung bestehen!
</pre></form></body></html>
Das PHP File:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<?php
echo "$SaveInhalt <br/>
$Ort";
?>
</body>
</html>
Gruss Christoph
Hallo.
hab jetzt nicht 100% verstanden,w as Du schon probiert hast und was nicht, aber eine Idee hätte ich doch:
Kann es sein, dass JavaScript für die Zuweisung eines Wertes auch eine Angabe des Wertes im Formular benötigt? D.h. ein (leerer) Value angegeben sein sollte.
Name: <input type="hidden" size="40" name="SaveInhalt" value="">
Grüße aus Würzburg
Julian
nee, daran liegt´s glaub ich nich, das hab ich auch schon ausprobiert.
gruß,
anja
Hallo.
hab jetzt nicht 100% verstanden,w as Du schon probiert hast und was nicht, aber eine Idee hätte ich doch:
Kann es sein, dass JavaScript für die Zuweisung eines Wertes auch eine Angabe des Wertes im Formular benötigt? D.h. ein (leerer) Value angegeben sein sollte.
Name: <input type="hidden" size="40" name="SaveInhalt" value="">
Grüße aus Würzburg
Julian
hi
schaut nach einem PHP config problem aus.
Probier das hier in dein php doku einzusetzen.
<?php while(list($key, $value) = each($HTTP_GET_VARS)) $$key = $value; ?>
Und schreib obs jetzt klappt
Gruss Christoph
hi, danke für die hilfe, aber es klappt leider nich. :(
(Hab´s sowohl in der save.php als auch in dem aufrufenden php probiert...)
gruß,
anja
hi
schaut nach einem PHP config problem aus.
Probier das hier in dein php doku einzusetzen.
<?php while(list($key, $value) = each($HTTP_GET_VARS)) $$key = $value; ?>
Und schreib obs jetzt klappt
Gruss Christoph