Beiträge: 70 Wohnort: Berlin Registriert: Apr 2008
| 09.04.2012, 20:56
Hey Leute,
hab n kleines Problem:
Ich versuche die Variablen aus Flash (Textfeldinhalte) per PHP-Script an eine MySQL-DB zu übermitteln. Leider klappt es nur mit den Werten, die direkt in der PHP stehen und vorgegeben sind.
Zunächst das AS dazu:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | function createPrivateUserOnDB():void
{
var sendit:URLLoader = new URLLoader();
var request:URLRequest = new URLRequest();
var variables:URLVariables = new URLVariables();
variables.RegPBenutzernameTF = "Benutzername";
variables.RegPPasswortTF = RegPPasswortTF.text;
variables.RegPEmailTF = RegPEmailTF.text;
variables.RegPSicherheitsfrage = RegPSicherheitsfrage.text;
variables.RegPSicherheitsantwortTF = RegPSicherheitsantwortTF.text;
variables.RegPAnrede = RegPAnrede.text;
variables.RegPVornameTF = RegPVornameTF.text;
variables.RegPNameTF = RegPNameTF.text;
variables.RegPAnschriftTF = RegPAnschriftTF.text;
variables.RegPPlzTF = RegPPlzTF.text;
variables.RegPOrtTF = RegPOrtTF.text;
variables.RegPLandTF = RegPLandTF.text;
trace(variables);
request.url = "php/createPrivateUserOnDB.php";
request.method = URLRequestMethod.POST;
request.data = variables;
sendit.addEventListener (Event.COMPLETE, prompt2);
sendit.load(request);
sendit.dataFormat = URLLoaderDataFormat.VARIABLES;
}
function prompt2 (e:Event):void {
var sendit:URLLoader = URLLoader(e.target);
var vars:URLVariables = new URLVariables(variables.data);
if (vars.rTF == "true") {
TweenLite.to(my270Passed, 0.5, {alpha:0.8});
TweenLite.to(my270Failed, 0.5, {alpha:0});
}
else {
TweenLite.to(my270Failed, 0.5, {alpha:0.8});
TweenLite.to(my270Passed, 0.5, {alpha:0});
}
}
function submitPrivateUserOnDB(e:MouseEvent):void
{
createPrivateUserOnDB();
}
|
Und das PHP-Script (php/createPrivateUserOnDB.php) wie folgt:
PHP:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
<?php
$server ="localhost";
$benutzer="---";
$kennwort="---";
$conn = mysql_connect($server, $benutzer, $kennwort)or die("Server connection failed". mysql_error()."<P>");
$db = "---";
$db_selected = mysql_select_db($db, $conn)or die("Database connection failed". mysql_error()."<P>");
//Variablen von Flash (Privatkonto)
$RegPBenutzerTF = $POST['RegPBenutzernameTF'];
$RegPPasswortTF=$POST['RegPPasswortTF'];
$RegPEmailTF=$POST['RegPEmailTF'];
$RegPSicherheitsfrage=$POST['RegPSicherheitsfrage'];
$RegPSicherheitsantwortTF=$POST['RegPSicherheitsantwortTF'];
$RegPAnrede=$POST['RegPAnrede'];
$RegPVornameTF=$POST['RegPVornameTF'];
$RegPNameTF=$POST['RegPNameTF'];
$RegPAnschriftTF=$POST['RegPAnschriftTF'];
$RegPPlzTF=$POST['RegPPlzTF'];
$RegPOrtTF=$POST['RegPOrtTF'];
$RegPLandTF=$POST['RegPLandTF'];
//Benutzer in DB anlegen
//Werte Kontotyp, Registriert und Status werden per direktem Aufruf in der SQL angelegt...
$abfrage = mysql_query("INSERT INTO User (Benutzername, Kontotyp, Registriert, Status, Passwort, Emailadresse, Sicherheitsfrage, Sicherheitsantwort, Anrede, Vorname, Name, Anschrift, Postleitzahl, Ort, Land) VALUES('$RegPBenutzerTF', 'privat', NOW(), 'nicht verifiziert', '$RegPPasswortTF', '$RegPEmailTF', '$RegPSicherheitsfrage', '$RegPSicherheitsantwortTF', '$RegPAnrede', '$RegPVornameTF', '$RegPNameTF', '$RegPAnschriftTF', '$RegPPlzTF', '$RegPOrtTF', '$RegPLandTF') ") or die(mysql_error()."<P>");
if($abfrage==1){
$rTF = "true";
echo "Data inserted!";
}else{
$rTF = "false";
}
?>
|
Ich denke der Fehler liegt an Flash. AS übermittelt die Vars nicht.
Wenn ich die PHP direkt aufrufe, trägt es die vorgegeben Werte ein.
Wenn ich über Flash gehe passiert gar nix :-/
Hat jemand ne Idee?
Liebe Grüße
Ricardo |