Drop-Down-Feld

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Drop-Down-Feld

Beitrag von nickvergessen »

Wollte mal Fragen, wie man das macht, dass bei der Auswahl einer Option im Dropdown-Menü für diesen gleich eine Aktion gemacht wird.
Falls ich mich jetzt zu doof ausgedrückt hab, hier mal ein Beispiel wie ich das mein.
Einfach mal diesen Kasten:
[ externes Bild ]
auf der Seite benutzen:
http://www.phpbb.com/bugs/phpbb3/tickets.php

Normale DropDowns bekommt man ja mit folgendem Code:

Code: Alles auswählen

<select name="field"><option value="bla">muh</option><option value="bla2">muh2</option></select>
Und zum Absenden dann das ganze in ein

Code: Alles auswählen

<form id="postform" method="post" action="{S_POST_ACTION}" onsubmit="return checkForm(this);"{S_FORM_ENCTYPE}>

			<fieldset>
				<input accesskey="s" tabindex="6" name="post" type="submit" value="{L_SUBMIT}" class="button1" />
			</fieldset>
	</form>
Packen, aber wie mach ich das, dass sofort abgesendet wird und man nicht erst den absende Button drücken muss?
kein Support per PN
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17476
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Beitrag von nickvergessen »

Ha, genau das hab ich gesucht, danke Dr.Death

Edit:
Scheint aber irgendwie nicht ganz zufunktionieren.
im Template hab ich jetzt:

Code: Alles auswählen

		<form id="postform" action="{S_POST_ACTION}">
				<strong>{L_BT_BUG_SHOWING}</strong>:&nbsp;
				<select name="status" method="post" onchange="submit();">
<option value="2">muh</option>
<option value="3">muh2</option>
				</select>
		</form>
Der Code in der viewcat.php

Code: Alles auswählen

$submit		= (isset($_POST['post'])) ? true : false;
$new_status = utf8_normalize_nfc(request_var('status', '', true));
if (($submit) && ($new_status))
{
	redirect(append_sid("{$phpbb_root_path}viewcat.$phpEx",  'st=' . $new_status . '&c=' . request_var('c', 0)));
	//echo $new_status;
}
statt auf viewcat.php?st=3&c=6 zulanden, komm ich auf viewcat.php?status=3 raus, kannst du mir da nochmal helfen ;)

Ausgangs-Seite war übrigens: viewcat.php?c=6

//Edit:
So, habs nun mit Hilfe und Tipp von Dr.Death gelöst:

Code: Alles auswählen

<form id="postform" action="{S_POST_ACTION}">
	<strong>{L_BT_BUG_SHOWING}</strong>:&nbsp;
	<select name="status" method="post" onchange="submit();">{STATUS_DROP_DOWN}</select>
	<input type="hidden" name="cat" value="{BUG_CAT_ID}" />
</form>

Code: Alles auswählen

$new_status = request_var('status', '');
$cat_id2 = request_var('cat', 0);
if ($new_status)
{
	redirect(append_sid("{$phpbb_bug_root_path}viewcat.$phpEx",  'st=' . $new_status . '&c=' . $cat_id2));
	//echo $new_status;
}
Das sind nun meine Code-Schnippsel und es funktioniert perfekt.
Die fehlende Cat_id wird dabei einfach über ein Hidden-Field übergeben
kein Support per PN
Antworten

Zurück zu „Coding & Technik“