| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Mar 2010
Beiträge: 15
| SQL nimmt Daten nicht auf
Hallo, ich hab mal eine vielleicht etwas komplexe Frage: Ich habe in Flash mit AS3 ein Script gebaut, dass verschiedene Texteingaben an eine PHP-Datei übergibt, diese soll dann in eine SQL-Datenbank schreiben. Danach kann dies dann über eine andere PHP-Datei und Flash wieder ausgegeben werden. Der Eintrag wird auch erstellt, allerdings wird der Inhalt meiner Textfelder nicht eingeschrieben. Ich habe mit .getDate und timestamp die Serverzeit auch übergeben, diese wird ohne Probleme geschrieben und auch nachher angezeigt. Am Zugriff auf die Datenbank kann es also grundsätzlich nicht liegen. Wenn ich von Hand etwas in die Datenbank eintrage wird das auch ohne Probleme angezeigt. Im ganzen Prozess werden keine Fehlermeldungen angezeigt, obwohl ich bei möglichen Fehlern Meldungen reingeschrieben habe. Gibt es bei SQL/PHP und Flash bekannte Probleme? Das ganze baut auf dem Workshop vom Buch Flash CS4 von Galileo Design auf. Ich zeig mal eben den Flash- und PHP-Code (die Adressen und Namen hab ich hier geändert): Code: function readData():void
{
var myLoader:URLLoader = new URLLoader();
var myDate:Date = new Date();
var timestamp:uint = myDate.getTime();
var myRequest:URLRequest = new URLRequest("http://www.meineAdresse/readData.php?"+timestamp);
myLoader.dataFormat=URLLoaderDataFormat.VARIABLES;
myLoader.load(myRequest);
myLoader.addEventListener(Event.COMPLETE, completeHandler);
myLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
myLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
}
function completeHandler(e:Event):void
{
var anzData:uint = uint(e.target.data.counter);
for (var i:uint = 0; i<anzData; i++)
{
var id:uint = e.target.data["id"+i];
var datum:String = e.target.data["datum"+i];
var zeit:String = e.target.data["zeit"+i];
var myname:String = e.target.data["vorname"+i] + " " + e.target.data["nachname"+i];
var email:String = e.target.data["email"+i];
var web:String = e.target.data["web"+i];
var msg:String = e.target.data["msg"+i];
gbData_arr.push({id:id, datum:datum, zeit:zeit, myname:myname, email:email, web:web, msg:msg});
}
renderData();
}
function securityErrorHandler(e:Event):void
{
status_txt.text = "Fehler beim Übertragen der Daten";
}
function ioErrorHandler(e:Event):void
{
status_txt.text = "Fehler beim Übertragen der Daten";
}
var gbData_arr:Array = new Array();
readData();
function renderData():void
{
ausgabe_txt.htmlText = "";
var outputStr:String = "";
for (var i:uint = 0; i<gbData_arr.length; i++)
{
outputStr+="<b>"+gbData_arr[i].myname+"<\b> schrieb am: ";
outputStr+=gbData_arr[i].datum+" um ";
outputStr+=gbData_arr[i].zeit+"<br>";
outputStr+=gbData_arr[i].msg+"<br>";
if (gbData_arr[i].web!="")
{
outputStr+="Web: "+gbData_arr[i].web+"<br><br>";
}
}
ausgabe_txt.htmlText=outputStr;
}
var sentState:Boolean = false;
send_mc.addEventListener(MouseEvent.CLICK, writeData);
function writeData(e:MouseEvent):void
{
if (sentState == false)
{
var myLoader:URLLoader = new URLLoader();
var myDate:Date = new Date();
var timestamp:uint = myDate.getTime();
var myRequest:URLRequest = new URLRequest("http://www.meineAdresse/writeData.php?"+timestamp);
myRequest.method = URLRequestMethod.POST;
var myVars: URLVariables = new URLVariables();
myVars.vorname = vornameBG_mc.input_txt.text;
myVars.nachname = nachnameBG_mc.input_txt.text;
myVars.email = emailBG_mc.input_txt.text;
myVars.web = webBG_mc.input_txt.text;
myVars.msg = msgBG_mc.input_txt.text;
myRequest.data = myVars;
myLoader.dataFormat= URLLoaderDataFormat.VARIABLES;
myLoader.load(myRequest);
myLoader.addEventListener(Event.COMPLETE, transferedOutput);
myLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
myLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
} else
{
status_txt.text="Du hast dich bereits eingetragen.";
}
}
function transferedOutput(e:Event):void
{
status_txt.text="Ihr Eintrag wurde eingefügt";
sentState = true;
readData();
} PHP-Code: |
| | |
| | #2 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.820
|
Mach einfach mal vor deiner Query ein echo aller Werte die du dort haben solltest - wenn die Fehlen liegt der Fehler vorher. Oder direkt mal ein print_r( $_POST ); am Anfang der Datei
__________________ (\__/) (='.'=) (")_(") |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Mar 2010
Beiträge: 15
|
Also bei dem Echo gibt er mir nichts aus. Das mit print hab ich nicht ganz verstanden. Wie sollte das aussehen? Der Fehler scheint ja vorher zu liegen, oder? Ich hab mal noch was einfacheres geschrieben: Code: function timerComplete(e:TimerEvent):void
{
if (mittags<=2 && sentState == false)
{
var myLoader:URLLoader = new URLLoader();
myLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
var myVars = new URLVariables();
myVars.med1 = med1_str;
// myVars.zeit = datumHeute;
var myRequest:URLRequest = new URLRequest("meine Adresse");
myRequest.method = URLRequestMethod.POST;
myRequest.data = myVars;
myLoader.load(myRequest);
sentState == true;
}
} PHP-Code: Vielen Dank, Gruß, Markus |
| | |
![]() |
| Lesezeichen |
| Stichworte |
| datenübergabe, php, problem, sql |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| $_POST nimmt Daten nicht an - $GET schon? | bigyeti | ActionScript 3 | 5 | 20-11-2009 08:13 |
| [Flash CS3] mc nimmt größe nicht an | Flo_21 | Flash Einsteiger | 5 | 17-03-2009 15:29 |
| FMS2 nimmt nicht auf | suingomat | Flash Media Server | 1 | 07-12-2006 16:49 |
| mysqldump nimmt nicht alle daten mit | ingohill | Server-Seite allgemein | 6 | 28-09-2005 21:12 |
| tell target nimmt Variable nicht | xthetronx | Flash MX | 2 | 17-06-2002 17:02 |