Formular Hilfe
Naktau
- formulare
Hallo Ihr lieben,
ich habe folgendes Problem: Ich möchte über ein Formular (Mit Feld Name und Feld Sitzungsnummer) zu einer URL weiterleiten, die die Sitzungsnummer erhält. Beispiel:
Die Sitzungsnummer lautet z.B.: 455-545-212
Die URL zu der z.B. weitergeleitet werdensoll: www.xdomain.de/_455545212_
(Die Sitzungsnummer soll hinten dran, nur ohne "-".
Da ich Laie bin, hat ein Freund mir dieses geschickt, aber es funktioniert so nicht. Kann da jemand helfen?
<form action="https://global.gotomeeting.com/join" method="POST" name="ssid" target="_blank">
<table border="0">
<tbody>
<tr>
<td width="121" class="allgemeineSchrift" style="font-weight: bold">Ihr Name:</td>
<td width="126" style="padding-left: 10px;"><input name="name" size="20" type="TEXT"></td>
</tr>
<tr>
<td class="allgemeineSchrift" style="font-weight: bold">Sitzungsnummer:</td>
<td style="padding-left: 10px;"><input name="supportSessionId" size="20" type="TEXT"></td>
</tr>
<tr>
<td height="50"></td>
<td style="padding-top: 5px;" align="right"><input style="padding: 10px 20px 10px 20px;" value="Verbinden" type="SUBMIT"></td>
</tr>
</tbody>
</table>
</form>
Tach!
Da ich Laie bin, hat ein Freund mir dieses geschickt, aber es funktioniert so nicht. Kann da jemand helfen?
Das kann nicht mit einfachem HTML funktionieren, dazu brauchst du Javascript-Kenntnisse, weil ein einfaches Formular eine andere als die gewünschte URL erzeugt. (Außerdem muss GET genommen werden und nicht POST.) Wenn du Laie bist, wird das also nicht viel werden. Zudem sind wir hier bei Selfhtml eher auf das Helfen beim Lernen ausgerichtet. Wenn du allerdings (wie ich vielleicht zu Unrecht vermute) schnell zur Lösung kommen möchtest und eigentlich nur einen kostenlosen ReparierHTML-Service suchst, wirst du es hier schwer haben. Ansonsten wären ein Einstieg in die Geschichte die Tutorials in unserem Wiki. Konkrete Fragen kannst du dann gern hier stellen.
dedlfix.
@@Naktau
Die Sitzungsnummer lautet z.B.:
455-545-212
Die URL zu der z.B. weitergeleitet werdensoll:www.xdomain.de/_455545212_
Für Beispieldomains bitte eine der nach BCP 32 dafür vorgesehenen verwenden, z.B. example.com
.
Mir scheint das eine ungünstige™ Systemarchitektur zu sein. Was geht es den Client an, wie der Server Formulardaten verarbeitet? Die Unterscheidung, was je nach Sitzungsnummer mit den Daten passiert, sollte der Server treffen und ggfs. in Abhängigkeit von der Sitzungsnummer (die ja auch in den Formulardaten zu finden ist) ein anderes Script ausführen.
Das heißt, es sollte gar nicht der URI im action
-Attribut geändert werden. Das ginge auch nur, wie dedlfix schon sagte, mit JavaScript. Also bei evtl. auch gar nicht.
Zu deinem HTML-Code:
<form action="https://global.gotomeeting.com/join" method="POST" name="ssid" target="_blank">
Dass sich eine neue Seite ungefragt in einem neuen Fenster/Tab öffnet, ist meist nicht das, was für den Nutzer gut ist.
<table border="0">
<td width="121" class="allgemeineSchrift" style="font-weight: bold">Ihr Name:</td>
<td width="126" style="padding-left: 10px;"><input name="name" size="20" type="TEXT"></td>
Darstellungsangaben sollten grundsätzlich per CSS erfolgen, nicht per HTML. Weder border="0"
noch width="121"
sollten im Markup stehen.
Darstellungsangaben sollten grundsätzlich im Stylesheet erfolgen, nicht inline in style
-Attributen in HTML. Weder style="font-weight: bold"
noch `style="padding-left: 10px;" sollten im Markup stehen.
size="20"
auch nicht.
Was fehlt: Deine Eingabefelder haben keine Beschriftung.
So haben sie eine:
<tr>
<th><label for="name">Ihr Name:</label></th>
<td><input name="name" id="name"></td>
</tr>
Ja, „Ihr Name“ ist die Kopfzelle in dieser Tabellenzeile. Also th
, nicht td
.
type="text"
kann man auch weggelassen, da das der Default für input
-Elemente ist.
LLAP 🖖
Moin!
Zu erst einmal:
Was Dein Freund Dir geschickt hat, stammt aus dem vorigen Jahrtausend. Layout-Tabellen waren bis in die späten 1990er-Jahre für die Webgestaltung erforderlich und wurden durch CSS abgelöst:
#ssid label {
display: inline-block;
width: 10em;
font-family: arial, helevetica, sans-serif;
font-weight: bold;
…
}
…
Damit lässt sich der HTML-Part dann auf das hier reduzieren:
<form action="https://global.gotomeeting.com/join" method="POST" id="ssid" name="ssid" target="_blank">
<label>Ihr Name:</label><input name="name" size="20" type="TEXT"><br>
<label>Sitzungsnummer:</label><input name="supportSessionId" size="20" type="TEXT"><br>
<input value="Verbinden" type="SUBMIT">
</form>
Jetzt zu Deinem Problem.
Wenn Du schon mit dem HTML so offensichtliche Probleme hast - wie willst Du dann das lösen.
Die hierbei noch auftretenden Probleme in einem Forum lösen (lassen) zu wollen ist ein ziemlich sportliches Ansinnen.
Jörg Reinholz
@@Jörg Reinholz
Layout-Tabellen waren bis in die späten 1990er-Jahre für die Webgestaltung erforderlich
Wobei man Paare Beschriftung–Eingabefeld schon noch als tabellarisch ansehen kann. table
muss man hierfür nicht verwenden; ich halte es aber nicht für prinzipiell falsch.
LLAP 🖖
Hej Gunnar,
Layout-Tabellen waren bis in die späten 1990er-Jahre für die Webgestaltung erforderlich
Wobei man Paare Beschriftung–Eingabefeld schon noch als tabellarisch ansehen kann.
table
muss man hierfür nicht verwenden; ich halte es aber nicht für prinzipiell falsch.
Welche tabellarischen daten werden denn dargestellt?
Aber davon mal ganz abgesehen, ist es gut, wenn die Beschriftungen über den Eingabefeldern stehen, weil bei extremer Vergrößerung oder Tunnelblick nebeneinander liegende Label und Eingabefeld schlecht zuzuordnen sind.
Wenn schon, dann sollte das Label rechtsbündig ausgerichtet werden und so direkt neben dem Eingabefeld stehen.
Marc