Archiv verlassen und diese Seite im Standarddesign anzeigen : über button hidden field setzen
KamiKatze 24-10-2005, 12:30 in dem folgenden quelltext, habe ich einen submitbutton, mit dem ich ein hiddenfeld setzen möchte. den wert hole ich mir aus der datenbank. das problem ist, das hiddenfeld wird nicht gesetzt. wieso?
echo "<input type='hidden' name='etagenwahl'>";
echo "<h2><u><b>Gebäude ".$_SESSION['gebaeudeauswahl']."</b></u></h2></br>";
$et=mysql_query("Select Etage, Beschreibung, EtagenID From etage
Where Haus='$_SESSION[gebaeudeauswahl]' Order By Etage");
while($row=mysql_fetch_row($et))
{ $zi=mysql_query("Select Zimmer, Beschreibung From zimmer
Where EtagenID='$row[2]' Order By Zimmer");
echo "<table class='leer'>";
echo "<td class='leer' width='20%'><b>Etage: $row[0]</b></td>";
echo "<td class='leer' width='60%'><b>$row[1]</b></td>";
echo "<td class='leer' width='20%'><b>Link zur Darstellung</b></td>";
echo "</table>";
echo "<table class='eins'>";
$m=0;
while($rowzi=mysql_fetch_row($zi))
{ if($m==5)
{ $m=0;
echo "</tr><tr>";
}
echo "<td><input type='submit' name='auswahletage' value='$rowzi[0]'
class='drei' onclick='this.form.etagenwahl.value=$row[0]'>";
echo " $rowzi[1]</td>";
$m++;
}
echo "</table></br>";
}
Hast du ein PHP- oder ein JS-Problem??
KamiKatze 24-10-2005, 13:04 ja frag mich mal? ich benutze öfter onclick und da funktioniert es. falsch geschrieben hab ich meiner meinung nach auch nichts. wenn ich auf den wert von "etagenwahl" zugreifen will, dann ist der immer leer.
das problem liegt hier onclick='this.form.etagenwahl.value=$row[0]'>"; wenn ich $row[0] durch eine andere variable ersetze, die eine feste wertzuweisung hat und von mir aus auch in der schleife steht, funktioniert das nicht. ersetze ich $row[0] durch einen festen wert, funktioniert das ganze bei onclick.
Dann guck dir mal bitte den HTML-Quelltext an. Was unterscheidet die funktionierende Version von der nicht funktionierenden?
KamiKatze 24-10-2005, 13:18 gut, laut html-quellcode steht beim onclick-ereignis das richtige ereignis mit den richtigen werte drin. dann bleibt nur noch das onclick-ereignis selbst, das mir das hiddenfeld nicht setzt. kann es daran liegen, dass das hiddenfeld außerhalb der tabelle sitzt und die knöpfe in dieser?
orginal html:
<input type='hidden' name='etagenwahl'>
<td><input type='submit' name='auswahletage' value='001'
class='drei' onclick='this.form.etagenwahl.value=E'> Flur
poste mal bitte html-code der funktionierenden und der nicht funktionierenden variante
Original geschrieben von KamiKatze
gut, laut html-quellcode steht beim onclick-ereignis das richtige ereignis mit den richtigen werte drin.
Nein, vermutlich ist dem nicht so.
onclick='this.form.etagenwahl.value=E'
Hast du eine Javascript-Variable, die auf den Namen E hört?
KamiKatze 24-10-2005, 13:32 nicht funktionierender code
<td><input type='submit' name='auswahletage' value='002'
class='drei' onclick='this.form.etagenwahl.value=E'> Flur</td>
funktionierender code
<td><input type='submit' name='auswahletage' value='002'
class='drei' onclick='this.form.etagenwahl.value=2'> Flur</td>
nächste Seite
nicht funktionierender code
<b><u>Gebäude A, Etage , Zimmer 002</b></u>
funktionierender code
<b><u>Gebäude A, Etage 2, Zimmer 002</b></u>
hinter der etage lese ich "etagenwahl" aus.
KamiKatze 24-10-2005, 13:49 @wahsaga
das soll ja auch eine wertzuweisung sein und keine übergabe einer variable. ich hab mal ein wenig rumprobiert, wenn ich statt $row[0] eine zahl schreibe, übernimmt er mir die beim nächsten formular, schreibe ich einen buchstaben, übernimmt er ihn nicht. um eine zeichenkette zu definieren kann ich doch nicht nochmal hochkomma in hochkomma machen.
mrhappiness 24-10-2005, 13:52 7 ist eine Zahl
E ist keine Zahl, sondern ein Buchstabe, also musst du entweder "E" oder 'E' schreiben.
Wie du das machst, und wo bei welcher Variante die ggf. notwendigen \ stehen müssen, findest du heraus/entscheidest du.
Wichtig ist nur, dass das E nicht einfach so dasteht
KamiKatze 24-10-2005, 14:07 dann verleitet mich deine antwort jetzt dazu, dich zu fragen wo ich mich über \ informieren kann.
mrhappiness 24-10-2005, 14:11 echo "abc";
echo "ab'c";
echo "ab\\"c";
echo 'abc';
echo 'ab"c';
echo 'ab\\'cc';alles klar?
KamiKatze 24-10-2005, 14:20 nach einem kleinen augenblick des testens schon.
großes :danke: an euch beide
und wir haben gelernt :teach:
onclick='this.form.etagenwahl.value=\"$row[0]\"'
|
|