Flash Formular >Chechbox/Radiobutton< mit PHP auslesen?

ruffnexx

Grünschnabel
Hallo.
Nachdem ich jetzt den ganzen Abend gesucht habe und nicht weitergekommen bin, versuch ich es mal hier.

Ich habe ein Formular in Flash und kann dieses auch problemlos mit PHP auslesen und an meine eMail Adresse schicken.

Mein Problem: Ich weiß einfach nicht wie ich den Wert (JA/NEIN) von Checkboxen / Radiobuttons auslesen kann.
Bei Textfeldern kann ich ja einfach eine Variable eingeben ( test ) und in der PHP-Datei mit ( $test ) auslesen. Aber wie funktioniert das bei Checkboxen / Radiobuttons?

Vielen Dank im Vorraus!

MfG ruff
 
Also, die Radio Buttons funktionieren (wie fast alles in
MX) mit Event-Handler und den mit diesen verbundenen Call-
Backs.

Der Event-Handler sagt einem Objekt (in deinem Fall dem
Radio Button) was er bei einem speziellen Ereignis tun
soll. Das was er tun soll, wird in eine Funktion gefasst
(den Call-Back)

Das heisst, du machst erstmal deine Radio Buttons mit deinen Einstellungen (in meinem beispiel sind es zwei Buttons) und gibst ihnen einen Namen (in meinem Fall sind das 'aus_1' und 'aus_2').

Dann dieses AS nutzen:

PHP:
// Call-Backs für die Change-Handler
funktion_1 = function () {
	// Zur Überprüfung, welcher Radio button ausgewählt ist.
	var state = aus_1.getState();
	if (state) {
		// Wenn er ausgewählt ist, mach das:
		_root.php_var = 'Der hat die erste Option genommen.'
	}
};
funktion_2 = function () {
	var state = aus_2.getState();
	if (state) {
		// Wenn er ausgewählt ist, mach das:
		_root.php_var = 'Der hat die zweite Option genommen.'
	}
};

// Change-Handler zuweisen
// Wenn aus_1 ausgewählt ist, starte die Funktion 'funktion_1'
// usw usw...
aus_1.setChangeHandler('funktion_1');
aus_2.setChangeHandler('funktion_2');

So, damit geben wir der Variable _root.php_var je nach Auswahl einen bestimmten Wert. Um diesen Wert nun an ein PHP-Script weiterzugeben, benutzte diese Sytax:

PHP:
// Wenn man auf den Button 'knopf' draufpatscht:
knopf.onRelease = function() {
	// Erstelle ein neues Load Vars Objekt:
	zu_sendende_variablen = new LoadVars();
	// Hau da die eine Variable rein mit dem Wert von '_root.php_var'
	zu_sendende_variablen.auswahl = _root.php_var;
	// Nun schicke alle Variable aus dem Load Vars Objekt an dieses Script:
	zu_sendende_variablen.send('script.php');
};

Dann hast du in deiner Php-Datei die Variable 'auswahl' mit den entsprechenden Werten.
Bei Checkboxen funktioniert das Ganze genauso, nur die Eigenschaften heißen ein bisschen anders, aber das kannste ja in der Flash-Hilfe nachlesen.

Hoffe, das hilft dir (weil wenn ich das umsonst getippt habe, bring ich dich um...)

Greetz,
Killkrog
 
Hallo.

Vielen Dank für die ausführliche Antwort! Ich hab das jetzt eigentlich vom Prinzip her verstanden, aber es funktioniert immer noch nicht. :(

Bei dem zweiten AS auf dem Button kommt folgende Meldung: "Dieses Skript enthält Fehler. Die Fehler werden im Ausgabefenster angezeigt"

Er zeigt aber in dem Fall kein Ausgabefenster...

PHP:
zu_sendende_variablen.send('script.php');
hab ich schon in
PHP:
zu_sendende_variablen.send("script.php", "POST");
umgewandelt, funktioniert aber auch nicht.

Er sendet einfach keine Mail.
Wie gesagt normale Textfelder kann ich mit PHP auslesen, funktioniert alles. Aber für die Radiobuttons / Checkboxen bin ich scheinbar zu blöd.

Hier die Dateien

Ich dreh noch durch...
 
Zuletzt bearbeitet:
Mann, du bist auch sone Pflaume...
Das Script für den Button gehört in die Zeitleiste, nicht AUF den Button.
Dann gehts auch wunderbar.
 
:) Danke funktioniert. Sorry bin AS Newbie
Eine letzte Sache noch: Wenn ich den Knopf gedrückt hab, öffnet er in einem neuen Internetexplorer Fenster die PHP Datei. Wie kann man das unterbinden und stattdessen z.b. im Flash "Formular erfolgreich versendet" erhalten? Ich raff garnixmehr. Müsste doch in der PHP Datei mit "echo" gehen...

:(
 
Hi,

zusätzlicher Parameter vor "POST", nämlich _self, anstatt _blank wie standardmässig eingestellt, ausserdem machst du sendAndLoad anstatt send, dann aus php mit echo arbeiten, in Flash findest du dann die geechote Var innerhalb des Loadvars Objektes , allerdings erst ' onLoad' .....

Grüsse B
 

Neue Beiträge

Zurück